我正在尝试绑定一个重复变量。我想要实现的是:
问题:
Number of bind variables doesn't match number of fields in prepared statement
注意: 我在bind_param中使用$ username_form两次
以下是我的代码:
$search_data=$db->prepare("SELECT message,user FROM test_table_1 WHERE (message=? AND user=?) OR (user=?)");
$search_data->bind_param("sss", $message_form, $username_form, $username_form);
$search_data->execute();
$search_data->bind_result($result1,$result2,$result3);
if($search_data->fetch() >0){
//echo "<script>alert('Entry already exist')</script>";
$search_data->close();
echo 'Error_duplicate';
}
else {
$insert_data=$db->prepare("INSERT INTO test_table_1(message,user) VALUES (?, ?)");
$insert_data->bind_param("ss", $message_form, $username_form);
$insert_data->execute();
if ($insert_data->affected_rows >0){
echo "New record created successfully";
} else {
echo "Not inserted";
}
$search_data->close();
$insert_data->close(); //close prepare statement
}
$db->close();
UPDATE1: 我知道一个类似的线程link但是,正如我已经说过上面的问题,我已经尝试将它绑定到三个变量,但它不起作用。我希望得到一些建议。