申し訳ありませんが、これは非常に基本的ですが、私はしばらくの間、円で回ってきました。私は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();
}
?>
に変更することができます。 '$ stmt'の前に' $ word'などの変数を入れてください –
この条件の後で$ word、$ book、$ pageという変数を定義する必要がありますif(isset($ post ["submit"])){ –