[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: meta данные из БД
Svetlaya
Здравствуйте.
У меня есть скрипт отображения новостей из базы данных. Вот он:

<?php
require_once 'inc/header.php';
require_once 'inc/menu.php';
require("config/config.inc.php");
require("function/functions.inc.php");
$link = mysql_connect($DBSERVER, $DBUSER, $DBPASS) or die("Не могу подключиться" );
mysql_select_db($DB, $link) or die ('Не могу выбрать БД');
mysql_query("SET NAMES utf8");


if($_GET['id']=='') {
$Q1 = mysql_query("SELECT * FROM tnews WHERE date_up <='".date('Ymd')."' ORDER BY id DESC LIMIT 5 ");

//Проверяем наличие новостей
if(mysql_num_rows($Q1) >0) {
while($r = mysql_fetch_array($Q1)) {
if($r['img_url']!== ''){
?>
<div class="news_box">
<
div id="bg-heading"><span class="heading"><?=stripslashes($r['heading']);?></span>
<
span class="date"><?=substr($r['date_up'],6,2);?>.<?=substr($r['date_up'],4,2);?>.<?=substr($r['date_up'],0,4);?></span></div>
<
div class="title"><?=stripslashes($r['title']);?></div>
<
div class="subtitle"><?=stripslashes($r['subtitle']);?></div>
<
img class="img_news" src="<?=$url;?>/<?=$r['img_url'];?>" /><div class="text"><?=stripslashes(substr($r['news'],0,900));?>
</div>
<
a class="full_open" href="?id=<?=$r['id'];?>">Подробнее...</a>
</
div>
<
div style="clear: both;"> </div>

<?
}
else {
?>
<div class="news_box">
<
div id="bg-heading"><span class="heading"><?=stripslashes($r['heading']);?></span>
<
span class="date"><?=substr($r['date_up'],6,2);?>.<?=substr($r['date_up'],4,2);?>.<?=substr($r['date_up'],0,4);?></span></div>
<
div class="title"><?=stripslashes($r['title']);?></div>
<
div class="subtitle"><?=stripslashes($r['subtitle']);?></div>
<
div class="text"><?=stripslashes(substr($r['news'],0,900));?>
</div>
<
a class="full_open" href="?id=<?=$r['id'];?>">Подробнее...</a>
</
div>
<
div style="clear: both;"> </div>
<?
}
}

}

else {echo 'Новостей нет';}
}

//Иначе отображаем новость полностью
else {

$id = clear($_GET['id']);
if(!is_numeric($id)) { echo 'Нельзя так'; exit();}
$Q2 = mysql_query("SELECT * FROM tnews WHERE id='".$id."'");
//Проверяем наличие новостей
if(mysql_num_rows($Q2) >0) {
$r = mysql_fetch_array($Q2);
if($r['img_url']!==''){
?>
<div class="news_box">
<
div id="bg-heading"><span class="heading"><?=stripslashes($r['heading']);?></span>
<
span class="date"><?=substr($r['date_up'],6,2);?>.<?=substr($r['date_up'],4,2);?>.<?=substr($r['date_up'],0,4);?></span></div>
<
div class="title"><?=stripslashes($r['title']);?></div>
<
div class="subtitle"><?=stripslashes($r['subtitle']);?></div>
<
img class="img_news" src="<?=$url;?>/<?=$r['img_url'];?>" /><div class="text"><?=stripslashes($r['news']);?>
</div>
<
div class="author_news"><?=stripslashes($r['author']);?></div>

</
div>
<?
}
else{
?>
<div class="news_box">
<
div id="bg-heading"><span class="heading"><?=stripslashes($r['heading']);?></span>
<
span class="date"><?=substr($r['date_up'],6,2);?>.<?=substr($r['date_up'],4,2);?>.<?=substr($r['date_up'],0,4);?></span></div>
<
div class="title"><?=stripslashes($r['title']);?></div>
<
div class="subtitle"><?=stripslashes($r['subtitle']);?></div>
<
div class="text"><?=stripslashes($r['news']);?></div>
<
div class="author_news"><?=stripslashes($r['author']);?></div>

</
div>
<?
}


//Увеличиваем число просмотров
mysql_query("UPDATE tnews SET views=views+1 WHERE id='".$id."'");
}
else {echo 'Новостей нет';}
}


require_once 'inc/sidebar.php';
require_once 'inc/footer.php';
?>


Подскажите пожалуйста, как сделать, чтобы при полном показе новости в title было допустим заголовок из БД данной новости. Пр чем все эти мета теги у меня подключаются в самом начале в файле header.php вместе с шапкой. Никак не пойму что надо сделать чтобы все было по-путнему.



Спустя 4 минуты, 40 секунд (23.11.2010 - 09:51) linker написал(а):
Сначала конфиги, подключение к БД, выборка новости, а уже потом отображение, а не наоборот и в перемешку.

Спустя 13 минут, 48 секунд (23.11.2010 - 10:05) Svetlaya написал(а):
То есть стоит вынести полное отображение новости в отдельный файл, а там сделать допустим так:

$link = mysql_connect($DBSERVER, $DBUSER, $DBPASS) or die("Не могу подключиться" );
mysql_select_db($DB, $link) or die ('Не могу выбрать БД');
mysql_query("SET NAMES utf8");
$Q2 = mysql_query("SELECT * FROM tnews WHERE id='".$id."'");
$r = mysql_fetch_array($Q2);
$title=$r['title'];


Далее подключить шапку, где

<title><?=$title?></title>


Я правильно мыслю?

Спустя 1 час, 24 минуты, 40 секунд (23.11.2010 - 11:30) inpost написал(а):
Эта строчка должна быть перед WHILE, если правильно понимаю код.
require_once 'inc/header.php';
require_once 'inc/menu.php';
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.