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

Форум PHP

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

 

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

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

тема: Вывод текста из текстового файла
 
 автор: sunduki   (16.11.2008 в 22:49)   письмо автору
 
 

Можно ли сделать так, чтобы на web-странице (HTML) с помощью PHP-скрипта выводился текст, находящийся в каком-нибудь текстовом файле? Например, в тегах <p></p> заключить скрипт, который обращался бы к файлу *.txt и просто выводил всё, что в нём есть. В итоге пользователь видел бы этот текст, но уже имеющий все свойства( жирность, размер и др.) заданные в тэгах <p>.

  Ответить  
 
 автор: Valick   (16.11.2008 в 22:50)   письмо автору
 
   для: sunduki   (16.11.2008 в 22:49)
 

Можно.

  Ответить  
 
 автор: sunduki   (16.11.2008 в 22:52)   письмо автору
 
   для: Valick   (16.11.2008 в 22:50)
 

а как?

  Ответить  
 
 автор: Valick   (16.11.2008 в 22:58)   письмо автору
 
   для: sunduki   (16.11.2008 в 22:52)
 

<?php
// Функция чтения файла
function read_file_func($file)
    {
// Открываем файл если он существует
    
if(file_exists($file))
        {
        
$f=fopen($file"r+t") or die("Невозможно открыть файл");
// Блокируем файл (разделяемая блокировка)
        
flock($fLOCK_SH);    // ждём завершения процесса записи
// В файл теперь никто не пишет, можно читать
        
$cont=explode("\n",fread($f,filesize($file)));    // считываем файл
        
fclose($f);        // закрываем файл
        
}
    else
        {
        
$cont="Файл не существует";
        }
// Возвращаем значение
    
return $cont;
    }
?>


<p>
<?php
$mass
=read_file_func('file.txt');
foreach (
$mass as $value) echo $value."<br>";
?>
</p>

  Ответить  
 
 автор: sunduki   (16.11.2008 в 23:09)   письмо автору
 
   для: Valick   (16.11.2008 в 22:58)
 

Спасибо большое, Valick!

  Ответить  
 
 автор: Valick   (16.11.2008 в 23:14)   письмо автору
 
   для: sunduki   (16.11.2008 в 23:09)
 

эта функция считывает строки файла в массив
а можно не заморачиваться и применить file_get_contents которая считывает в переменную файл целиком в виде одной строки

  Ответить  
 
 автор: Valick   (16.11.2008 в 23:45)   письмо автору
 
   для: sunduki   (16.11.2008 в 23:09)
 

Ещё вариант
<p><?php include ("test.txt"); ?></p>

  Ответить  
 
 автор: sunduki   (17.11.2008 в 10:54)   письмо автору
 
   для: Valick   (16.11.2008 в 23:45)
 

Valick, что-то у меня ничего не получается. тестирую на виртуальном сервере- на странице ничего не выводится ((

  Ответить  
 
 автор: Valick   (17.11.2008 в 11:30)   письмо автору
 
   для: sunduki   (17.11.2008 в 10:54)
 

Расширение исполняемого должно быть .php

  Ответить  
 
 автор: sunduki   (17.11.2008 в 15:19)   письмо автору
 
   для: Valick   (17.11.2008 в 11:30)
 

Valick, ты объясни пожалуйста подробно на пальцах ). Мне что достаточно будет вставить в хтмл страницу вот это:

<p>
<?php
$mass=read_file_func('file.txt');
foreach ($mass as $value) echo $value."<br>";
?>

или это

<p><?php include ("test.txt"); ?></p>

и тогда всё должно отображаться? Или же вот это тоже куда-нибудь вставить надо:

<?php
// Функция чтения файла
function read_file_func($file)
{
// Открываем файл если он существует
if(file_exists($file))
{
$f=fopen($file, "r+t") or die("Невозможно открыть файл");
// Блокируем файл (разделяемая блокировка)
flock($f, LOCK_SH); // ждём завершения процесса записи
// В файл теперь никто не пишет, можно читать
$cont=explode("\n",fread($f,filesize($file))); // считываем файл
fclose($f); // закрываем файл
}
else
{
$cont="Файл не существует";
}
// Возвращаем значение
return $cont;
}
?>

А ссылку на файл откуда будет браться текст как указать? Просто его имя? Он у меня находится в корне сервера.

  Ответить  
 
 автор: mikha   (17.11.2008 в 16:13)   письмо автору
 
   для: sunduki   (17.11.2008 в 15:19)
 

$file = dirname (__FILE__)."/имя_файла";
Я не стал смотреть, может там не $file, надеюсь смысл понял.

  Ответить  
 
 автор: Valick   (17.11.2008 в 18:08)   письмо автору
2.2 Кб
 
   для: sunduki   (17.11.2008 в 15:19)
 

достаточно будет вставить в хтмл страницу
я же сказал, что расширение файла должно быть .php а не .html
Так как РНР по умолчанию не обрабатывает html страницы

Вот прикрепил архив. И учитесь работать с путями файлов, да и вообще учитесь))

  Ответить  
 
 автор: sunduki   (18.11.2008 в 09:45)   письмо автору
 
   для: Valick   (17.11.2008 в 18:08)
 

Заработало!!!! Спасибо! Единственный форум где нормально помогли ))

  Ответить  
 
 автор: Valick   (18.11.2008 в 09:57)   письмо автору
 
   для: sunduki   (18.11.2008 в 09:45)
 

А чегож вы хотели?)) Круговая порука, так сказать)))
Ведь многие кому помогли на этом форуме возвращаются сюда и начинают помогать другим, таким же начинающим как и они в своё время.
Пожалуйста )

  Ответить  
 
 автор: cherkas   (14.12.2013 в 06:10)   письмо автору
 
   для: Valick   (16.11.2008 в 22:58)
 

Здравствуйте, подскажите пожалуйста как добавить путь к файлу

$mass=read_file_func('/папка_1/папка_2/file.txt'); 


$mass=read_file_func('папка_1/папка_2/file.txt'); 


почему то ни так ни так не работает.

  Ответить  
 
 автор: Valick   (14.12.2013 в 07:57)   письмо автору
 
   для: cherkas   (14.12.2013 в 06:10)
 

Вы вернули к жизни тему 2008-го года, хотя лучше создать новую и описать ситуацию более подробно.
Как именно оно увас не работает? Сервер запущен? Отображение ошибок включено?

  Ответить  
 
 автор: AcidTrash   (16.11.2008 в 22:59)   письмо автору
 
   для: sunduki   (16.11.2008 в 22:49)
 

-

  Ответить  
Rambler's Top100
вверх

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