【发布时间】:2020-06-01 05:29:49
【问题描述】:
这是我在数据表中存储值的数组代码。 我想在一个 MySQL 字段中存储四个字段值
我需要将 answer1, answer2, answer3, answer4 存储在答案行中
显示错误:- wpdb::prepare 调用不正确。不支持的值类型(数组)。有关更多信息,请参阅 WordPress 中的调试。 (此消息是在 4.8.2 版本中添加的。)
这是我的数组代码
if(isset($_POST['submit'])){
$answer1=$_POST['answer1'];
$answer2=$_POST['answer2'];
$answer3=$_POST['answer3'];
$answer4=$_POST['answer4'];
$table_name2 = $wpdb->prefix . 'pte_quiz';
$wpdb->insert(
$table_name2,
array(
'answer' => array('answer1' =>$answer1, 'answer2' =>$answer2, 'answer3' =>$answer3, 'answer4' =>$answer4),
'uid' => $uid,
'user' => $user )
);
echo "Your answer successfully submited!!!";?><br>
Your Answer is <?php echo $answer;
exit;
}
【问题讨论】:
-
用适当的分隔符将答案放在一个字符串中,例如 $str = $ans1.','.$ans2.','...... ;然后插入str,在reterival中使用explode方法得到数组中的答案。
-
@Hardood,不推荐你的方法。如果我们使用的分隔符存在于答案本身中怎么办?爆炸时,它会破坏答案。