$servername = 'servername'; //服务器名称$username = 'username'; //数据库用户名$password = 'password'; //登录密码$dbname = 'mydb';//创建连接$conn = new mysqli($servername, $username, $password, $dbname);//检测连接(PHP 5.2.9和5.3.0版本适用)/* if($conn->connect_error){ die('连接失败:' . $conn->connect_error);} *///检测连接(兼容更早版本)if(mysqli_connect_error()){ die('连接失败:' . mysqli_connect_error());}else{ $sql = "INSERT INTO myguests VALUES(?, ?, ?)"; //为mysqli_stmt_prepare()初始化statement对象 $stmt = mysqli_stmt_init($conn); echo $stmt; //不知道为什么$stmt是空的,没有数据 //预处理语句 if(mysqli_stmt_prepare($stmt, $sql)){ //绑定参数 mysqli_stmt_bind_param($stmt, 'sss', $firstname, $lastname, $email); //设置参数并执行 $firstname = 'Sam'; $lastname = 'Poly'; $email = 'sam@gmail.com'; mysqli_stmt_execute($stmt); $firstname = 'Mary'; $lastname = 'Moe'; $email = 'mary@gmail.com'; mysqli_stmt_execute($stmt); $firstname = 'Julie'; $lastname = 'Dooley'; $email = 'julie@gmail.com'; mysqli_stmt_execute($stmt); echo '插入成功'; }}
あなたは混乱しています。
$conn = mysqli_connect(....)
mysqli_stmt_init($conn)
これはペアです
$conn = new mysqli(....)
$conn ->stmt_init()
これはペアです はい
モデレータさん、熱心な回答をありがとうございます。あなたがリストした両方の方法がまだ使用可能です。問題は INSERT ステートメントのパラメーター リストにあるためです。 echo mysqli_stmt_init($conn) は結果を出力しないことがわかりました。最近 PHP を学習したばかりなので、コードを入力しました。チュートリアルは本当に詐欺です