データ入力を挿入できません。さまざまなチュートリアルとサンプルコードを見て数時間を費やしましたが、次のものが機能しない理由がわかりません。
$data1 = 0;
$data2 = "pumpkin";
$data3 = "cake";
$data4 = "orange";
$data5 = "sweet";
$stmt = $mysqli->stmt_init();
// Here I have a few SELECT queries that checks if $data2 and/or $data3 is already taken
$query = "INSERT INTO ". $mytable . " SET data1=?, data2=?, data3=?, data4=?, data5=?";
if ($stmt->prepare($query)) {
$stmt->bind_param("issss", $data1, $data2, $data3, $data4, $data5);
$stmt->execute() or trigger_error($mysqli->error); // added per Your Common Sense's suggestion
//$stmt->bind_result($data1, $data2, $data3, $data4, $data5);
$stmt->close();
$mysqli->close();
} else {
echo $mysqli->error; // edited per Yogesh Suthar's suggestion
$stmt->close();
$mysqli->close();
}
オンラインでエラーが発生し$stmt->bind_result
ます。
警告: mysqli_stmt::bind_result(): バインド変数の数が準備済みステートメントのフィールド数と一致しません
私は何を間違っていますか?
$db_user、$db_password、$db_dbname が適切に定義された上に、次のものがあります。
$mysqli = new mysqli('localhost', $db_user, $db_password, $db_dbname);