MySQLi预处理语句不执行

时间:2014-05-13 20:07:10

标签: php mysql mysqli

我有其他陈述,他们工作正常,只是这个不工作,我不知道为什么,我的查询有问题?它没有给出错误,但仍然没有“替换”db。

        $stmt = $GLOBALS['mysqli']->prepare("REPLACE INTO `user_info`(`id`,`avatar`,`description`,`signature`,`skype`,`xfire`,`msn`,`facebook`,`steam`) VALUES ( ?,?,'',?,?,?,?,?,?)"); 
        $stmt->bind_param("issssssss", $id, $avatar, $signature, $skype, $xfire, $msn, $facebook, $steam);
        $stmt->execute();

1 个答案:

答案 0 :(得分:1)

你有8个占位符,将9个值传递给bind param,但告诉它期望9. IE你有一个额外的'S'

 $stmt = $GLOBALS['mysqli']->prepare("REPLACE INTO `user_info`(`id`,`avatar`,`description`,`signature`,`skype`,`xfire`,`msn`,`facebook`,`steam`) VALUES ( ?,?,'',?,?,?,?,?,?)"); 
$stmt->bind_param("isssssss", $id, $avatar, $signature, $skype, $xfire, $msn, $facebook, $steam);
$stmt->execute();