Всем привет. Не получается отредактировать работника. При нажатии на отправить ничего не происходит. Покажите пожалуйста ошибку. Голова уже кругом идет. Я только учусь.
<?php
error_reporting(E_ALL);
//Устанавливаем доступы к базе данных:
$host = 'localhost'; //имя хоста, на локальном компьютере это localhost
$user = 'root'; //имя пользователя, по умолчанию это root
$password = ''; //пароль, по умолчанию пустой
$db_name = 'test'; //имя базы данных
//Соединяемся с базой данных используя наши доступы:
$link = mysqli_connect($host, $user, $password, $db_name);
//Устанавливаем кодировку (не обязательно, но поможет избежать проблем):
mysqli_query($link, "SET NAMES 'utf8'");
//Формируем тестовый запрос:
/*$query = "SELECT * FROM workers WHERE name LIKE '%я'";
*/
//Делаем запрос к БД, результат запроса пишем в $result:
/*$result = mysqli_query($link, $query) or die(mysqli_error($link));
for ($data = []; $row = mysqli_fetch_assoc($result); $data[] = $row);
var_dump($data);*/
?>
<table>
<tr>
<th>id</th>
<th>имя</th>
<th>возраст</th>
<th>зарплата</th>
<th>Удаление</th>
<th>Редактирование</th>
</tr>
<?php
if (!empty($_POST)) {
$addName = $_POST['name'];
$addAge = $_POST['age'];
$addSalary = $_POST['salary'];
$query = "INSERT INTO workers SET name = '$addName', age = '$addAge', salary = '$addSalary'";
mysqli_query($link, $query) or die(mysqli_error($link));
}
if (isset($_GET['del_id'])) {
$del = $_GET['del_id'];
$query = "DELETE FROM workers WHERE id = $del";
mysqli_query($link, $query) or die(mysqli_error($link));
}
$query = "SELECT * FROM workers";
$result = mysqli_query($link, $query) or die(mysqli_error($link));
for ($data = []; $row = mysqli_fetch_assoc($result); $data[] = $row);
$res = '';
foreach ($data as $elem) {
$res .= "<tr>";
$res .= "<td>$elem[id]</td>";
$res .= "<td>$elem[name]</td>";
$res .= "<td>$elem[age]</td>";
$res .= "<td>$elem[salary]</td>";
$res .= "<td><a href=\?del_id=\"$elem[id]\">Удалить</a></td>";
$res .= "<td><a href=\?edit_id=\"$elem[id]\">Редактировать</a></td>";
$res .= "</tr>";
}
echo $res;
?>
</table>
<p>Добавить работника</p>
<form action="" method="POST">
<p>Имя</p>
<input type="text" name="name">
<p>Возраст</p>
<input type="text" name="age">
<p>Зарплата</p>
<input type="text" name="salary"><br><br>
<input type="submit">
</form>
<?php
if (isset($_GET['edit_id'])) {
$query = "SELECT * FROM workers WHERE id = $_GET[edit_id]";
mysqli_query($link, $query) or die(mysqli_error($link));
$result = mysqli_query($link, $query) or die(mysqli_error($link));
for ($data = []; $row = mysqli_fetch_assoc($result); $data[] = $row);
foreach ($data as $edit) {
echo "<form method= \"GET\">";
echo "<input type=\"text\" name=\"edit_name\" value=\" $edit[name]\"><br>";
echo "<input type=\"text\" name=\"edit_age\" value=\" $edit[age]\"><br>";
echo "<input type=\"text\" name=\"edit_salary\" value=\" $edit[salary]\"><br>";
echo "<input type=\"submit\"";
echo "</form>";
}
} if (isset($_GET['edit_name'])) {
$editName = $_GET['edit_name'];
$editAge = $_GET['edit_age'];
$editSalary = $_GET['edit_salary'];
$query = "UPDATE workers SET name = '$editName', salary = '$editSalary', age = '$editAge' WHERE id = $_GET[edit_id]";
mysqli_query($link, $query) or die(mysqli_error($link));
}
echo $_GET['edit_name'];
?>
Структура таблицы: