Проктикуюсь в самостоятельном создании небольшого блога. Проблема в том что нет добавления записи в БД.
Данные в значения прокидываются здесь .Проверил отладочной функцией
$sql = "INSERT INTO `posts`(`title`, `texton`, `img`) VALUES('$title','$texton','$img')";
Но самой отправки в БД не происходит. Не вижу где может быть промах.Прошу помощи.Спасибо
Логика отправления в БД
<?php
session_start();
require_once '../DB.php';
if($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['button-post'])) {
$title = trim( $_POST['title']);
$texton = trim( $_POST['texton']);
$img = $_POST['img'];
$error ='';
if (strlen($title) <= 2 ) {
$error = 'Заголовок должен иметь хотя-бы 2 символа';
}
elseif (strlen($texton)<= 5 ) {
$error = 'У текста должно быть хоть какое-то содержание';
}
else {
$sql = "INSERT INTO posts(title, texton, img) VALUES('$title','$texton','$img')";
$query = $connect->prepare($sql);
$query->execute([$title,$texton,$img]);
}
}
Форма заполнения на всякий случай.
<form action="addPost_form.php" method="post" class="row justify-content-center">
<h2>Добавление статьи</h2>
<div class="mb-3 col-12 col-md-4 err">
<p><?=$error?></p>
</div>
<div class="w-100"></div>
<div class="mb-3 col-12 col-md-6">
<label for="title">Заголовок</label>
<input type="text" name="title" id="title" class="form-control">
</div>
<div class="w-100"></div>
<div class="mb-3 col-12 col-md-8">
<label for="texton">Содержание</label>
<textarea type="text" name="texton" id="texton" class="form-control" ></textarea>
</div>
<div class="w-100"></div>
<div class="mb-3 col-12 col-md-4">
<input name="img" type="file" class="form-control" id="img">
</div>
<div class="w-100"></div>
<div class="mb-3 col-12 col-md-4">
</div>
<div class="w-100"></div>
<div class="mb-3 col-12 col-md-4">
<button type="submit" class="btn btn-secondary" name="button-post">Добавить</button>
</div>
</form>
execute([$title,$texton,$img])ты понимаешь? – u_mulder Sep 18 '21 at 15:53