Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Bindparam不适用于我的分页脚本_Php_Mysql - Fatal编程技术网

Php Bindparam不适用于我的分页脚本

Php Bindparam不适用于我的分页脚本,php,mysql,Php,Mysql,我找到了脚本,因为它可能容易受到sql注入的攻击,所以我尝试使用bindparamstart\u limit变量,但无法工作。这是我的密码: include(“include/config.php”); include(“include/functions.php”); $query=$connect->prepare(“从教程中选择*); $query->execute(); $total_results=$query->rowCount(); $total_pages=ceil($tota

我找到了脚本,因为它可能容易受到sql注入的攻击,所以我尝试使用bindparamstart\u limit变量,但无法工作。这是我的密码:

include(“include/config.php”);
include(“include/functions.php”);
$query=$connect->prepare(“从教程中选择*);
$query->execute();
$total_results=$query->rowCount();
$total_pages=ceil($total_results/$paglimit);
如果(!isset($\u GET[“page”])){
$page=1;
$\u GET[“page”]=1;
}否则{
$page=$_GET[“page”];
}
$starting_limit=($page-1)*$PAGFLIMIT;
?>

    1/我认为这不是一个好的synthax:

    $query = $connect->prepare("SELECT * FROM tutorials 
        ORDER BY id DESC LIMIT :starting_limit , $paglimit");
    
    你可能是说:

    $query = $connect->prepare("SELECT * FROM tutorials 
        ORDER BY id DESC LIMIT $paglimit OFFSET :starting_limit");
    
    2/您必须指定
    PDO语句::bindParam
    $data\u type
    参数,默认情况下该参数为
    PDO::PARAM\u STR

    ()

    在您的情况下,
    start\u limit
    应具有类型
    PDO::PARAM\u INT

    更改:

    $query->bindParam(":starting_limit", $starting_limit); 
    
    致:


    现在可以用了,谢谢。这不是我第一次使用bindparam,而且我总是在没有PDO::PARAM_INT的情况下使用它。我必须阅读php中包含文档的链接,才能理解确切的原因。
    $query->bindParam(":starting_limit", $starting_limit); 
    
    $query->bindParam(":starting_limit", $starting_limit, PDO::PARAM_INT);