mysqli_stmt的使用

<?php
header("Content-Type:text/html;charset=utf-8");
/* 
 * @see mysqli_stmt 预处理对象,它可能完成mysqli和mysqli_result处理结果集的所有内容
 * @see 通过它还可以防止sql注入攻击,通过绑定参数的方式来进行,
 * @see 从效率上看,它比其他两个的效率更高。因为服务器端只需要编译一次,那么就可以直接多个sql语句,而客服端只需要传入几个参数到服务器就可以了
 * @see 这个的话传入的更少效率也就跟高
 *
 * */
$mysqli = @new mysqli("localhost","root","zhang@.1314","test02");
if(mysqli_connect_errno()){
    echo "连接失败".mysqli_connect_error();
}else{
    echo "连接成功。。。";
}

//连接成功之后我们就创建一个mysqli_stmt对象,一般有两种方式创建
$sql = "SELECT id,userName FROM test WHERE id< ?";
/* prepare statement */
if ($stmt = $mysqli->prepare($sql)) {
    $stmt->bind_param("i",$id);
    $id = 10;
    var_dump($stmt->execute());
        $stmt->bind_result($col1, $col2);
        while ($stmt->fetch()) {
            printf("%s %s\n", $col1, $col2);
        }
        $stmt->close();
}

$mysqli->close();
?>

 

posted @ 2013-08-22 17:36  bolobeach  阅读(160)  评论(0)    收藏  举报