извините, если это очень просто, но я некоторое время ходил по кругу. Я новичок в PHP, но ни одна из документации не помогает, и ни один из предыдущих вопросов здесь не объясняет.Вставка данных переменной формы с использованием PHP и MySQLi
Я пытаюсь создать простую форму, которая берет ввод пользователя и создает запись в базе данных, но код, который у меня есть, кажется, не распознает предоставленные переменные. Когда я использую строки вместо этого, операция вставки завершается, поэтому я знаю, что это не проблема с соединением.
У меня нет сообщений об ошибках - страница обновляется, как будто ничего не произошло.
<form action="" method="post">
<input type="text" name="new_word" id="word" required="required"/>
<input type="text" name="book_ref" id="book" required="required"/>
<input type="text" name="page_range" id="page" required="required"/>
<input type="submit" value="Submit" name="submit"/>
</form>
<?php
if(isset($_POST["submit"])){
$servername = "localhost";
$username = "user";
$password = "pass";
$dbname = "database";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$stmt = $conn->prepare("INSERT INTO `words` (`Word`, `Book ID`, `Page`)
VALUES (?,?,?)");
$stmt->bind_param(1, $word);
$stmt->bind_param(2, $book);
$stmt->bind_param(3, $page);
$word = $_POST["new_word"];
$book = $_POST["book_ref"];
$page = $_POST["page_range"];
$stmt->execute();
$conn->close();
}
?>
получать значения после запроса на вставку? поместите свои переменные '$ word' и т. д. перед' $ stmt' –
, вы должны определить эти переменные $ word, $ book, $ page после этого условия if (isset ($ _ POST ["submit"])) { –