為啥我這個預先處理語句執行不了呢

來源:互聯網
上載者:User
$mysqli= new mysqli("localhost","root","123456","xsphpdemo");
if(mysqli_connect_errno()){
echo "串連失敗
".mysqli_connect_error();
}

$stmt=$mysqli->prepare("select id name price num desn from shop where id>?");

$stmt->bind_param("i",$id);
$stmt->bind_result($id,$name,$price,$num,$desn);
$id="10";
$stmt->execute();
$stmt->store_result();
while($stmt->fetch()){
echo "$id -- $name -- $price -- $num -- $desn
";
}
echo $stmt->num_rows;
$stmt->close();
執行Var_dump("select id name price num desn from shop where id>?")
布爾型值是假
好像$mysqli->prepare()語句執行不成功,不知道為啥


回複討論(解決方案)

"select `id`, `name`, `price`, `num` ,`desn` from shop where id>?"

echo $stmt->error; 有錯誤資訊嗎

echo $stmt->error; 有錯誤資訊嗎


沒有,我按樓上的加了引號,加入var_dump($stmt)之後顯示是對象了,可是一執行錯誤又變成------>


echo $stmt->error; 有錯誤資訊嗎


沒有,我按樓上的加了引號,加入var_dump($stmt)之後顯示是對象了,可是一執行錯誤又變成------>


我沒用過mysqli,但你這句是不是錯了
$stmt->bind_param("i",$id);


是不是應為
$stmt->bind_param(1,$id);

欄位沒有隔開
$stmt=$mysqli->prepare("select id, name, price, num, desn from shop where id>?");

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.