Продолжаем серию уроков по Взаимодействию 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 от посторонних кодов. И наконец выполнили запрос на ввод данных в базу, с условием, если результат запроса – истина, то вывести положительный ответ, если ложь, то вывести негативный ответ.

Вот и все. Этот код конечно не идеал защиты. Я повторюсь, акцент делаем на вводе данных.

Исходные файлы урока можете скачать тут.