以下问题:
如果我想使用“姓氏”进行搜索,则可以使用,但如果它是此格式的变量$results['22']['BuyerName2']
这是我到目前为止所得到的:
$rr=$results[22]['BuyerName2'];
echo $rr; //echos Last Name
$stmt = $db->prepare("Update base_1 SET UpdateStatus=2 WHERE BuyerName LIKE ?");
$stmt->bindValue(1, "%$rr%", PDO::PARAM_STR);
$stmt->execute();
如果我将$rr
名称直接放在绑定值部分中,则可以正常工作。但不是$rr
。
答案 0 :(得分:3)
也许$rr
中有额外的空格。尝试:
$rr = trim($results[22]['BuyerName2']);
答案 1 :(得分:1)
在行中:
$stmt->bindValue(1, "%$rr%", PDO::PARAM_STR);
我不确定$绑定的字符串中是否会转义$。据我所知,只有下划线和百分号保持未转义状态。我建议尝试:
$rr = "%".$rr."%";
并将该行编辑为:
$stmt->bindValue(1, $rr, PDO::PARAM_STR);