欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

PHP预处理语句执行过程中不知道什么有关问题,求大神解答,分数不多,下面是代码

程序员文章站 2024-02-06 07:59:58
...
PHP预处理语句执行过程中不知道什么问题,求大神解答,分数不多,下面是代码

$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 = [email protected]';
mysqli_stmt_execute($stmt);

$firstname = 'Mary';
$lastname = 'Moe';
$email = [email protected]';
mysqli_stmt_execute($stmt);

$firstname = 'Julie';
$lastname = 'Dooley';
$email = [email protected]';
mysqli_stmt_execute($stmt);

echo '插入成功';
}
}

好像mysqli_stmt_init($conn)执行后没反应,我echo了一下,没东西输出,所以后面的mysqli_stmt_prepare($stmt, $sql)也执行不下去了,实在不清楚为什么没有执行,也没有报错
------解决思路----------------------
你用混了!
$conn = mysqli_connect(....)
mysqli_stmt_init($conn)
这是一对

$conn = new mysqli(.....)
$conn ->stmt_init()
这才是一对
PHP预处理语句执行过程中不知道什么有关问题,求大神解答,分数不多,下面是代码

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

相关文章

相关视频