為啥無法使用php中mysqli的準備語句進行資料庫中資料的查詢(綁定參數或者綁定結果),項目急用

來源:互聯網
上載者:User
為什麼無法使用php中mysqli的準備語句進行資料庫中資料的查詢(綁定參數或者綁定結果),項目急用!
代碼如下:

/*
利用mysqli擴充來綁定結果
*/
//建立伺服器串連
$mysqli=new mysqli('localhost','root','root','searcdb');
//建立查詢
$query="SELECT adminName,adminPwd FROM admininfo";
//建立語句對象
$stmt=$mysqli->stmt_init();
//為執行準備語句
$stmt->prepare($query);
//執行語句
$stmt->execute();
//綁定結果參數
$stmt->bind_result($name,$pwd);
//迴圈處理結果並輸出資料
while($stmt->fetch()){
printf("%s, %s, %s
",$name,$pwd);
}
//恢複語句資源
$stmt->close();
//關閉串連
$mysqli->close();
?>
這個語句到底有什麼問題啊 我直接做增刪改查是可以,但是無論是採用mysqli綁定結果或者綁定參數的方法都不行,求大俠指導啊,公司實習很快就要用它做項目了,急用急用!!


------解決方案--------------------
printf("%s, %s, %s
",$name,$pwd); ???

少了一個參數
或者說多了一個格式符
------解決方案--------------------
多一個預留位置。你不是只有兩個參數嗎?
------解決方案--------------------
少了一行代碼,要把查詢結果臨時儲存才能使用。
僅供參考:

function selectLink($oid){
$sql = "select o.oid,l.lid,c.cid,comName,comPrice,ordTime
from mis_order o,mis_link l,mis_commodity c
where o.oid=l.lid and c.cid=l.cid and o.oid=?";
$stmt = $this->mysqli->prepare($sql);
$stmt->bind_param("i",$oid);
$stmt->execute();
$stmt->store_result();
$stmt->bind_result($oid,$lid,$cid,$comName,$comPrice,$ordTime);
$rows = $stmt->affected_rows;
if($rows > 0){
$arrLink = array();
while($stmt->fetch()){
$arr = array(
"oid" => $oid,
"lid" => $lid,
"cid" => $cid,
"comName" => $comName,
"comPrice" => $comPrice,
"ordTime" => $ordTime
);
array_push($arrLink,$arr);
}
return $arrLink;
}else{
echo "查詢訂單明細失敗!
";
}
}
  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.