Показать сообщение отдельно

  #20  
Старый 15.08.2008, 17:33
Gifts
Reservists Of Antichat - Level 6
Регистрация: 25.04.2008
Сообщений: 827
Провел на форуме:
2769640

Репутация: 1304


По умолчанию

А не проще ли вместо извращений с БД выводить результат запроса в файл и его просто инклудить? Преимущества на лицо - в десятки раз уменьшаем количество запросов к базе (так как надо раз обновлять файл раз в час/сутки), не надо создавать лишних, да и ненужных таблиц

Получится что-то вроде:
PHP код:
$filetime=lstat('news.txt'); // Получаем массив информации о файле
$cur=time()-$ftime[9]; // Получаем время прошедшее с последней модификации файла
if ($cur>2500// Если прошло больше 2500 секунд, то делаем запрос к БД
{
$f=fopen('news.txt','w'); 

// Все echo заменяем на $out.= 
// Чтобы собрать в эту переменную все данные которые надо выводить

$host "localhost";    // MySQL server
$user_db "";        // MySQL пользователь
$pass_db "";            // MySQL пароль
$dbase "";        // MySQL база данных
$dtable "eu_ad";        // Таблица в базе данных

mysql_connect ($host$user_db$pass_db);
mysql_select_db($dbase);
$sql "SELECT link_id, images, v_title, v_255_12, v_descr, catid, rand() AS rnd FROM $dtable WHERE ((catid=403)OR(catid=404)) GROUP BY link_id ORDER BY rnd LIMIT 5";
$result mysql_query($sql);
$rows mysql_num_rows($result);
$out="";
if ((!
$rows) || ($rows 1)) {$out.="Результатов НЕТ!!!";}
else {
      
$out.="<table width=500 class=last_pellets>";
      while(list(
$id_link$images$v_title$v_255_12$v_descr ) = mysql_fetch_row($result)) {
$images explode"\n"$images );
$images $images[0];
      
$v_descr=strip_tags($v_descr);
      
$v_descr=substr($v_descr,0,150);

       
$out.= "<tr><td>";
           if(empty(
$images))
             echo 
"";
             else
            
$out.= "<a href='page-o$id_link.html'><img src='files/$images' width=60 class=imgConf></a>"


  
$out.="</td><td><a href='page-o$id_link.html'>$v_title</a>   $v_descr ... </td><td>$v_255_12</td></tr>";
}
       }
$out.="</table>";
fwrite($f,$out);fclose($f); // Записываем в файл
}

echo 
file_get_contents('news.txt'); // Всегда выводим содержимое файла 
 
Ответить с цитированием