Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/9: Рейтинг темы: голосов - 9, средняя оценка - 4.56
0 / 0 / 0
Регистрация: 05.05.2019
Сообщений: 10

Вывести список записей из файла циклом foreach

29.08.2019, 08:05. Показов 1926. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, имеется класс:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
require_once __DIR__.'/shablon.php';
class view
{
 
    protected $autor;
    protected $comment;
 
    public function assign($name, $value){
        file_put_contents(__DIR__.'/book.txt',$name.':'.$value."\n",FILE_APPEND);
    }
    public function display($template){
        $lines = file($template, FILE_IGNORE_NEW_LINES);
        foreach ($lines as $line) {
            $part = explode(':', $line);
            $this->comment = $part[1];
            $this->autor = $part[0];
        }
    }
 
    public function getAutor(){return $this->autor;}
 
    public function getComment(){return $this->comment;}
}
$Boook = new view();
$Boook-> assign($_POST['avtor'], $_POST['otvet']);
$Boook->display(__DIR__.'/book.txt');
И имеется Шаблон:

PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php require_once __DIR__.'/view.php';?>
 
<article>
<?php echo $Boook->getAutor().' '.$Boook->getComment().'<br>';?>
</article>
 
 
<h1>Шаблонная страница</h1>
 
 
<form action="/index.php" method="post">
    Ваше имя: <input type="text" name="avtor"><br><br>
    Напишите сообщение: <input type="text" name="otvet"><br><br>
    <button type="submit">Добавить запись</button>
</form>
В форме я ввожу свое имя и сообщение..При клике на кнопку имя и запись добавляется и в браузер и в файл..Но если отправить еще раз другие имя и сообщение, то в браузер заменяется запись на новую, а в файл добавляется новая запись в новой строке..Полдня бошку ломаю, решил не доламывать, а спросить у вас))...Спасибо!
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
29.08.2019, 08:05
Ответы с готовыми решениями:

Заполнить массив циклом for и вывести через foreach
Создать целочисленный массив n=6 на m=3 и заполнить при помощи цикла for значениями начиная от 1 до 63. Вывести на экран, созданный...

Записи. Вывести список деталей с циклом обработки больше 10 мин
Дана Запись нужна программа которая выводит запись и заполняет её. спасибо Дана запись |Деталь| Время обработки (мин)___| точение |...

Список с заглавным звеном, из текстового файла получить список из записей и по нему уже сделать задание
Структура записи: -ФИО(40 знаков) -Адрес: -Улица(20 знаков) -Номер дома -Квартира -Номер телефона(10 знаков) -Баланс ...

3
Модератор
 Аватар для long399
2882 / 1837 / 933
Регистрация: 16.10.2013
Сообщений: 5,242
Записей в блоге: 15
29.08.2019, 09:22
для начала: пользуйтесь пожалуйста кнопочками для обертки кода в нужные теги, такие портянки читать неудобно.

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
require_once __DIR__.'/shablon.php';
class view
{
 
protected $autor;
protected $comment;
 
public function assign($name, $value){
file_put_contents(__DIR__.'/book.txt',$name.':'.$value."\n",FILE_APPEND);
}
public function display($template){
$lines = file($template, FILE_IGNORE_NEW_LINES);
foreach ($lines as $line) {
$part = explode(':', $line);
$this->comment = $part[1];
$this->autor = $part[0];
}
}
 
public function getAutor(){return $this->autor;}
 
public function getComment(){return $this->comment;}
}
$Boook = new view();
$Boook-> assign($_POST['avtor'], $_POST['otvet']);
$Boook->display(__DIR__.'/book.txt');
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php require_once __DIR__.'/view.php';?>
 
<article>
<?php echo $Boook->getAutor().' '.$Boook->getComment().'<br>';?>
</article>
 
 
<h1>Шаблонная страница</h1>
 
 
<form action="/index.php" method="post">
Ваше имя: <input type="text" name="avtor"><br><br>
Напишите сообщение: <input type="text" name="otvet"><br><br>
<button type="submit">Добавить запись</button>
</form>
И вопрос, собственно не до конца понятен. Что требуется сделать в итоге ?
0
0 / 0 / 0
Регистрация: 05.05.2019
Сообщений: 10
30.08.2019, 01:33  [ТС]
Цитата Сообщение от long399 Посмотреть сообщение
И вопрос, собственно не до конца понятен. Что требуется сделать в итоге ?
А да, извините...Мне нужно чтобы в браузер выводились все записи с файла __DIR__.'/book.txt'...А на данный момент у меня выводится только одно последнее сообщение, в браузере одно заменяется на другое, а в файл нормально все записывается..
0
Модератор
 Аватар для long399
2882 / 1837 / 933
Регистрация: 16.10.2013
Сообщений: 5,242
Записей в блоге: 15
30.08.2019, 06:04
PHP
1
2
3
4
5
6
7
8
9
public function display($template){
    $lines = file($template, FILE_IGNORE_NEW_LINES);
    foreach ($lines as $line) {
        $part = explode(':', $line);
        $this->comment = $part[1];
        $this->autor = $part[0];
        echo $this->autor . ' ' . $this->comment . '<br>';
    }
}
PHP/HTML
1
2
3
4
5
6
<article>
<?php 
    $Boook = new View();
    echo $Boook->display();
?>
</article>
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
30.08.2019, 06:04
Помогаю со студенческими работами здесь

Работа с циклом foreach
Есть два скрипта. Первый вешается на квадраты в сцене и добавляет в один массив сам квадрат, в другой цифру. После этого второй скрипт,...

Проблемы с циклом foreach
implement main open core, console class facts i : unsigned := 0. class predicates deleteItemsWithEvenIndices:...

Ошибка с циклом foreach
функция function allusers() { connect_db(); $query = &quot;SELECT `login` FROM `reg_users`&quot;; $result = mysql_query($query); $rows...

Запись в файл циклом foreach
&lt;div class=&quot;col-md-2&quot;&gt; &lt;ul class=&quot;dropdown-menu&quot; role=&quot;menu&quot; aria-labelledby=&quot;dropdownMenu&quot; style=&quot;display: block; position: relative;...

Ошибка при работе с циклом foreach
Здравствуйте, мне нужно перебрать массив при помощи цикла foreach, я работаю локально на машине с openserver. При выполнении кода...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru