Ввод данных MYSQL
Продолжаем серию уроков по Взаимодействию PHP и MYSQL. И сегодня темой второго урока будет Ввод данных в базу mysql. Честно скажу, что, я люблю больше выводить данные из базы. Сам не знаю почему, наверное сказывается мое отвращение к работе с HTML формами, а их родимых нам и придется сейчас использовать. Вы можете для старта взять исходники из первого урока, а именно файл db.php. Также можете использовать базу, с который мы работали в первом уроке.
1. Создавать файл db.php – не нужно, он уже есть.
2. Создайте файл insert.php. В этом файле будет содержаться форма для добавления новости.
Добавьте в него код:
echo "<form method=\"POST\" action=\"handler.php\"> Название новости:<br> <input type=\"text\" name=\"title\"><br> Текст новости:<br> <textarea name=\"text\" cols=\"20\" rows=\"5\"></textarea><br> <input type=\"submit\" value=\"Добавить\"> </form>";
Что мы сделали? Мы добавили форму.
Данные будут передаваться методом POST файлу handler.php.
3. Создайте файл handler.php. Этот файл будет отвечать за обработку и добавление новости непосредственно в базу.
Скопируйте в него код:
include ("db.php"); if (isset($_POST["title"])) {$title = $_POST["title"];} if (isset($_POST["text"])) {$text = $_POST["text"];} $title = htmlspecialchars($title); $text = htmlspecialchars($text); $title = stripslashes($title); $text = stripslashes($text); $query = mysql_query ("INSERT INTO news (title, text) VALUES ('$title', '$text')"); if ($query) { echo "Новость успешно добавлена"; } else { echo "Ошибка добавления новости"; }
Что мы сделали? Подключили файл db.php. Выполнили проверку на существование глобальных переменных title и text, с условием, если глобальные переменные существуют, то записать значение глобальных переменных title и text в переменные title и text. Защитили переменные title, text от посторонних кодов. И наконец выполнили запрос на ввод данных в базу, с условием, если результат запроса – истина, то вывести положительный ответ, если ложь, то вывести негативный ответ.
Вот и все. Этот код конечно не идеал защиты. Я повторюсь, акцент делаем на вводе данных.
Исходные файлы урока можете скачать тут.
