На локальном сервере apache2 под ubuntu 17.04 при попытке отправить данные в форме методом post, форма просто обновляется и ничего не происходит. Использую PHP7 с расширением mysqli. Файл login.php содержит переменные $db_hostname, $db_username, $db_password, $db_database. Сам код из файла sqltest.php.
<?php
require_once 'login.php';
$db_server = new mysqli($db_hostname, $db_username, $db_password, $db_database);
if($db_server->connect_errno) die("Невозможно подключиться к MySQL: " . $db_server->connect_error);
if(isset($_POST['delete']) && isset($_POST['isbn']))
{
$isbn = get_post('isbn');
$query = "DELETE FROM classics WHERE isbn='$isbn'";
if(!$db_server->query($query))
echo "Сбой при удалении данных: $query<br />" . $db_server->error . "<br /><br />";
}
if (isset($_POST['author']) &&
isset($_POST['title']) &&
isset($_POST['category']) &&
isset($_POST['year']) &&
isset($_POST['isbn']))
{
echo "YES! <br />"; // для проверки
$author = get_post('author');
$title = get_post('title');
$category = get_post('category');
$year = get_post('year');
$isbn = get_post('isbn');
$query = "INSERT INTO classics VALUES" . "('$author', '$title', '$category', '$year', '$isbn')";
if(!$db_server->query($query))
echo "Сбой при вставке данных: $query<br />" . $db_server->error . "<br /><br />";
}
echo "<form action=\"sqltest.php\" method=\"post\"><pre>
Author <input type=\"text\" name=\"author\" />
Title <input type=\"text\" name=\"tittle\" />
Category <input type=\"text\" name=\"category\" />
Year <input type=\"text\" name=\"year\" />
ISBN <input type=\"text\" name=\"isbn\" />
<input type=\"submit\" value=\"ADD RECORD\" />
</pre></form>";
$query = "SELECT * FROM classics";
$result = $db_server->query($query);
if(!$result) die ("Сбой при доступе к базе данных: " . $db_server->error);
for($row_no = 0; $row_no < $result->num_rows; ++$row_no)
{
$result->data_seek($row_no);
$row = $result->fetch_assoc();
echo "
<pre>
Author: " . $row['author'] .
"<br />Title: " . $row['title'] .
"<br />Category: " . $row['category'] .
"<br />Year: " . $row['year'] .
"<br />ISBN: " . $row['isbn'] .
"</pre>
<form action=\"sqltest.php\" method=\"post\">
<input type=\"hidden\" name=\"delete\" value=\"yes\" />
<input type=\"hidden\" name=\"isbn\" value=\"" . $row['isbn'] . "\" />
<input type=\"submit\" value=\"DELETE RECORD\" />
</form>
";
}
$db_server->close();
function get_post($var)
{
return mysqli_real_escape_string($_POST[$var]);
}
?>