Код PHP выводит информацию из БД правильно, но не может записать в неё. Никаких ошибок не выводит при добавлении записи, возвращает эту же страницу с тем же содержимым. Основной файл:
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" type="text/css" href="assets/css/stye.css">
<title>Prods</title>
</head>
<body>
<div class="container">
<h1>Prods</h1>
<form action="/prods.php" method="post">
<input type="text" name="title" placeholder="Название продукта">
<input type="date" name="data" placeholder="Дата привоза продукта">
<input type="number" name="quantity" placeholder="Количество товара">
<input type="number" name="amount" placeholder="Сумма">
<button type="submit" name="sendProd">Сохранить</button>
</form>
</div>
</body>
</html>
<?php
$title = $_POST['title'];
if($title == '') {
echo 'Введите название продукта';
exit();
}
$data = $_POST['data'];
if($data == '') {
echo 'Выберите дату';
exit();
}
$quantity = $_POST['quantity'];
if($quantity == '') {
echo 'Введите количество товара';
exit();
}
$amount = $_POST['amount'];
if($amount == '') {
echo 'Введите сумму';
exit();
}
$dsn = 'mysql:host=localhost;dbname=qwe';
$pdo = new PDO($dsn, 'root', 'root');
$sql = 'INSERT INTO prod(title) VALUES(:title)';
$query = $pdo->prepare($sql);
$query->execute(['title' =>$title ,]);
$sql = 'INSERT INTO prod(data) VALUES(:data)';
$query = $pdo->prepare($sql);
$query->execute(['data' =>$data ,]);
$sql = 'INSERT INTO prod(quantity) VALUES(:quantity)';
$query = $pdo->prepare($sql);
$query->execute(['quantity' =>$quantity ,]);
$sql = 'INSERT INTO prod(amount) VALUES(:amount)';
$query = $pdo->prepare($sql);
$query->execute(['amount' =>$amount ,]);
header('Location: /personal_arena.php');
?>
prod(id,title,data,quantity,amount) VALUES (NULL, :title, :data, :quantity, :amount); – Азат Oct 08 '20 at 08:55