第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

PHP mysqli準備語句,如

PHP mysqli準備語句,如

滄海一幻覺 2019-07-11 10:36:20
PHP mysqli準備語句,如我如何使用mysqli進行類似的查詢并獲得所有結(jié)果?這是我的代碼,但不起作用:$param = "%{$_POST['user']}%";$stmt = $db->prepare("SELECT id,Username FROM users WHERE Username LIKE ?"); $stmt->bind_param("s", $param);$stmt->execute();$stmt->bind_result($id,$username);$stmt->fetch();這段代碼似乎不起作用。我已經(jīng)搜了很多遍了。此外,它可能返回超過1行。那么,即使它返回超過1行,我如何才能得到所有的結(jié)果呢?
查看完整描述

3 回答

?
MMMHUHU

TA貢獻1834條經(jīng)驗 獲得超8個贊

下面是正確獲取結(jié)果的方法

$param = "%{$_POST['user']}%";$stmt = $db->prepare("SELECT id,Username FROM users WHERE Username LIKE ?");
$stmt->bind_param("s", $param);$stmt->execute();$stmt->bind_result($id,$username);while ($stmt->fetch()) {
  echo "Id: {$id}, Username: {$username}";}

或者你也可以:

$param = "%{$_POST['user']}%";$stmt = $db->prepare("SELECT id,Username FROM users WHERE Username LIKE ?");
$stmt->bind_param("s", $param);$stmt->execute();$result = $stmt->get_result();while ($row = $result->fetch_array(MYSQLI_NUM)) {
  foreach ($row as $r) {
    print "$r ";
  }
  print "\n";}

我希望你能意識到我是直接從手冊上得到答案的這里這里這是你應(yīng)該先去的地方。


查看完整回答
反對 回復 2019-07-11
?
慕雪6442864

TA貢獻1812條經(jīng)驗 獲得超5個贊

CONCAT在準備好的陳述中是安全的從注入,但您應(yīng)該謹慎使用LIKE準備好的陳述中的子句??紤]到這一點:$stmt=$db->prepare("SELECT 顧客ASsuggestion哪里customername比如conat(“cust_”,?,‘%’);“;‘然后’$key='J%';(甚至$key='';), $stmt->bind_param('s', $key);..現(xiàn)在$stmt->execute();會回來所有記錄..因此,在處理具有“l(fā)ike”子句的準備語句時,仍然需要處理_%以適當?shù)姆绞?。即使使用準備好的語句,轉(zhuǎn)義就像$key='J\%';是必要的。

查看完整回答
反對 回復 2019-07-11
  • 3 回答
  • 0 關(guān)注
  • 479 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號