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

Форум PHP

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

 

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

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

тема: Создание таблицы из текстового файла
 
 автор: Hunter   (08.08.2006 в 14:11)   письмо автору
 
 

Вобщем нужно следующее: на сервере в папочке хранится большое кол-во текстовых файлов, в каждом файле есть такая информация: название, автор, раздел, год, описание книги. Вопрос такой - можно ли как-нибудь сделать так, чтобы при запросе на вывод информации создавалась таблица, поля которой содержали бы первые 4 параметра из файла (название, автор, раздел, год)? Причем только тех файлов, которые в данный момент присутсвуют в папке, то есть если файл удалил то при следующем обращении информации из него уже не будет. По мойму это называается индексирование, хотя может и нет :-)

   
 
 автор: CrazyAngel   (08.08.2006 в 14:17)   письмо автору
 
   для: Hunter   (08.08.2006 в 14:11)
 

легко =)
дайте структуру файла, чего нить придумаем =)

   
 
 автор: Hunter   (08.08.2006 в 14:29)   письмо автору
 
   для: CrazyAngel   (08.08.2006 в 14:17)
 

Ну где-то так:

Эффект рекламы
Лейчик В. М.
Реклама
1991
Ну а здесь идет краткое описание книги.

Если нужно можно структуру и изменить, это не проблема.

   
 
 автор: CrazyAngel   (08.08.2006 в 15:30)   письмо автору
 
   для: Hunter   (08.08.2006 в 14:29)
 


<?php
// Директория
$dir "."

// Пропускаем . и ..
readdir($dir);
readdir($dir);

// Делаем таблицу
echo "<table border=\"1\">";
while(
$file readdir($dir)) {
    
$text file($dir."/".$file);
    echo 
"<tr><td>$text[1]</td><td>$text[2]</td><td>$text[3]</td><td>$text[4]</td></tr>";
    }
echo 
"</table>";
?>

   
 
 автор: Hunter   (08.08.2006 в 15:39)   письмо автору
 
   для: CrazyAngel   (08.08.2006 в 15:30)
 

А можно чтобы эта инфа (название, автор и т.д.) помещались в MySQL таблицу, чтобы потом по ней поиск можно было осуществить?

   
 
 автор: CrazyAngel   (08.08.2006 в 16:11)   письмо автору
 
   для: Hunter   (08.08.2006 в 15:39)
 

можно, =) формируете запрос да оправляете =)

   
 
 автор: Hunter   (08.08.2006 в 17:32)   письмо автору
 
   для: CrazyAngel   (08.08.2006 в 15:30)
 

Че-то ругается :-(
Вот код:

<?php 
$dir 
".";
$dir opendir($dir); 
readdir($dir); 
readdir($dir); 
echo 
"<table border=\"1\">"
while(
$file readdir($dir)) { 
    
$text file($dir."/".$file); 
    echo 
"<tr><td>$text[0]</td><td>$text[1]</td><td>$text[2]</td><td>$text[3]</td></tr>"
    } 
echo 
"</table>"
?>


А вот результат:

Warning: file(Resource id #2/1.php) [function.file]: failed to open stream: No such file or directory in C:\php\Apache2\htdocs\test\direct\p1.php on line 8

Warning: file(Resource id #2/1.txt) [function.file]: failed to open stream: No such file or directory in C:\php\Apache2\htdocs\test\direct\p1.php on line 8

Warning: file(Resource id #2/2.txt) [function.file]: failed to open stream: No such file or directory in C:\php\Apache2\htdocs\test\direct\p1.php on line 8

Warning: file(Resource id #2/3.txt) [function.file]: failed to open stream: No such file or directory in C:\php\Apache2\htdocs\test\direct\p1.php on line 8

Warning: file(Resource id #2/p1.php) [function.file]: failed to open stream: No such file or directory in C:\php\Apache2\htdocs\test\direct\p1.php on line 8

   
 
 автор: CrazyAngel   (08.08.2006 в 17:36)   письмо автору
 
   для: Hunter   (08.08.2006 в 17:32)
 

сорри =)))

<?php
$directory 
".";
$dir opendir($directory);
readdir($dir);
readdir($dir);
echo 
"<table border=\"1\">";
while(
$file readdir($dir)) {
    
$text file($directory."/".$file);
    echo 
"<tr><td>$text[0]</td><td>$text[1]</td><td>$text[2]</td><td>$text[3]</td></tr>";
    }
echo 
"</table>";
?>

   
 
 автор: Hunter   (08.08.2006 в 17:42)   письмо автору
 
   для: CrazyAngel   (08.08.2006 в 17:36)
 

Теперь вот что:

"; while($file = readdir($dir)) { $text = file($directory."/".$file); echo "$text[0]$text[1]$text[2]$text[3]"; } echo ""; ?>

   
 
 автор: Hunter   (08.08.2006 в 17:44)   письмо автору
 
   для: Hunter   (08.08.2006 в 17:42)
 

Убрал
 border=\"1\"
- теперь вобще тишь да гладь, ничего не выводит.

   
 
 автор: Hunter   (08.08.2006 в 17:47)   письмо автору
 
   для: Hunter   (08.08.2006 в 17:44)
 

Урряяя все работает =))
Огромный респект !!!

   
 
 автор: 1q1   (08.08.2006 в 15:22)   письмо автору
 
   для: CrazyAngel   (08.08.2006 в 14:17)
 

Если структура тех файлов в папке одинакова, то есть там можно одинаково вывести из массива, то написать скрипт будет проще простого

   
Rambler's Top100
вверх

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