我正在转向mysqli - 我知道有些人会说我应该去PDO - 但那不是我现在所处的位置。 我的第一份准备好的声明不起作用,我不知道为什么。我查看了PHP文档,看起来我没事。 我没有收到错误 - 我确实引发了错误情况并获得了消息。 它可能只是在fetch_assoc部分。 请参阅以下内容:
我感谢任何帮助。
$link = mysqli_connect("localhost","user","pass","db") or trigger_error($link->error);
mysqli_set_charset($link,"utf8");
error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);
$ct=count($arr3_modid);
if(!($stmt = $link->prepare("SELECT vbrands.* FROM vbrands WHERE model_id=? ORDER BY price"))){
echo "Prepare failed: (" . $link->errno . ") " . $link->error; }
$i=0;
for($i=0;$i <= $ct-1; $i++){
$arr3_int=(int)$arr3_modid[$i];
if(!($stmt->bind_param("i", $arr3_int))){
echo "Bind failed: (" . $stmt->errno . ") " . $stmt->error; }
if(!($stmt->execute())){
echo "execute failed: (" . $stmt->errno . ") " . $stmt->error; }
if(!($res = $stmt->get_result())){
echo "res failed: (" . $stmt->errno . ") " . $stmt->error; }
while($r3=$res->fetch_assoc()){
echo $r3['version_id];
echo.......
}
}
变量$arr3_modid
是一个字符串数组。
答案 0 :(得分:0)
考虑使用error_reporting(E_ALL);
$i=0;
以上for($i=0
不是必需的。
echo.......
给出错误,我考虑你压缩了部分代码,如果没有,这是你的错误,并且对error_reporting的调用无法正常工作。
检查您是否使用PHP 安装/编译了MySQLi扩展程序。