Страницы

Поиск по вопросам

воскресенье, 10 марта 2019 г.

Заполнение массива данными php

Есть форма ввода. Надо заполнить массив данными из формы и вывести. Но у меня не получается аккумулировать записи. Каждый ввод стирает предыдущий. Как сделать так чтобы записи добавлялись к массиву?




Ответ

Как сделать так чтобы записи добавлялись к массиву?
Использовать сессию для ввода/вывода notes.php, до завершения надо сохранить в один из вариантов представленных ниже:

Использовать файлы для ввода/вывода записей (не самый удачный)
$note = filter_var ($_POST['text'], FILTER_SANITIZE_STRING); $yor_file = file_put_contents('notes.txt', $note.PHP_EOL , FILE_APPEND | LOCK_EX);

Использовать базу данных для ввода/вывода записей (рекомендованный)
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password); // set the PDO error mode to exception $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $sql = "INSERT INTO notes (text) VALUES (:text)"; $stmt = $conn->prepare($sql); $stmt->bindParam(':text', $_POST['text']); $stmt->execute();

Будет логичнее потом расспечатывать, на той странице которая послала эти записи.
Скорее в связке с сессией, которая до завершения сохранит все в базу данных, будет оптимальным решением.

$_SESSION - Ассоциативный массив, содержащий переменные сессии, которые доступны для текущего скрипта. file_put_contents - Если notes.txt не существует, файл будет создан. Добавит в файл новую запись FILE_APPEND. Класс PDO - Представляет соединение между PHP и сервером базы данных.

Комментариев нет:

Отправить комментарий