Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Отображение содержимого последних 20 файлов
 
 автор: webmonster   (19.10.2006 в 19:59)   письмо автору
 
 

Это.. У меня вопрос такой… Есть такое:


$file = fopen("msgs/msg.".time(),"w");
fwrite($file, "<br><table border=0 width=500 height=60 bgcolor=#D3D3D3><tr><td>Запись добавлена ".date("Y.m.d H:i:s")." <br>\r\n");
fwrite($file, "Имя: ");
fwrite($file, $name."<br>\r\n");
fwrite($file, "Город: ");
fwrite($file, $city."<br>\r\n");
fwrite($file, "E-m@il: ");
fwrite($file, $email."<br>\r\n");
fwrite($file, "URL: ");
fwrite($file, $url."<br>\r\n");
fwrite($file, "Сообщение: <br>\r\n");
fwrite($file, $msg."</td></tr></table><br>\r\n");
fclose($file);


А как сделать, чтобы на главной странице отображалось содержимое этих файлов("msgs/msg.".time(),"w"); начиная с последнего? Речь идёт о гвестбуке, и ещё, нужно чтобы когда будет ровно 20 таких файлов, первый удалялся, как такое сделать? Заранее сенк!

   
 
 автор: cheops   (19.10.2006 в 23:26)   письмо автору
 
   для: webmonster   (19.10.2006 в 19:59)
 

Можно поступить примерно следующим образом
<?php 
  
// Открываем директорию 
  
$dir opendir("dir_name"); 
  
// В цикле считываем её содержимое 
  
while(($file readdir($dir))) 
  { 
    
// Если текущий объект является файлом
    // помещаем его в массив
    
if(is_file($file)) $arr[] = $dir."/".$file
  }
  
// Закрываем директорию 
  
closedir($dir); 
  
// Сортируем файлы в обратном порядке
  
rsort($arr);
  
// Выводим первые 20, остальные удаляем
  
for($i 0$i count($arr); $i++)
  {
    if(
$i 20)
    {
      
// Выводим содержимое файла $arr[i]
    
}
    else
    {
      
unlink($arr[i]);
    }
  }
?> 

   
 
 автор: webmonster   (21.10.2006 в 10:29)   письмо автору
 
   для: cheops   (19.10.2006 в 23:26)
 

А почему место содержимого выскакивает это???:
Warning: opendir(dir_name): failed to open dir: No such file or directory in /home/t/topchat.h17.ru/WWW/index.php on line 60

Warning: readdir(): supplied argument is not a valid Directory resource in /home/t/topchat.h17.ru/WWW/index.php on line 62

Warning: closedir(): supplied argument is not a valid Directory resource in /home/t/topchat.h17.ru/WWW/index.php on line 69

   
 
 автор: spirtspirit   (21.10.2006 в 13:22)   письмо автору
 
   для: webmonster   (21.10.2006 в 10:29)
 

А у тебя папка с именем dir_name, есть?
В смысле dir_name-это папка, где у тебя лежат файлы.

   
 
 автор: cheops   (21.10.2006 в 13:57)   письмо автору
 
   для: webmonster   (21.10.2006 в 10:29)
 

Вместо dir_name следует указать имя вашей директории.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования