我有这样的代码:
global $wpdb;
$wpdb->insert(
'name_of_table',
array(
'someInteger' => $surveyResult6,
'someString' => $surveyResult7
),
array(
'%d',
'%s'
)
);
// Increment database rows
$wpdb->insert_id;
echo $surveyResult7;
...我在表格中插入字符串时遇到问题。
没有错误,evrything似乎很好,但我的数据库中没有新的记录。如果我将字符串更改为数字并再次提交表单,则会出现带有两位数字的新行。
我已经阅读了一些问题,比如这个问题(wpdb和字符串),但我找不到任何解决方法。谁能告诉我该怎么办?
答案 0 :(得分:1)
您的脚本中有错误
global $wpdb;
$wpdb->insert(
'name_of_table',
array(
'someInteger' => $surveyResult6,
'someString' => $surveyResult7
),
array(
'%d', //<---remove unwanted single quotes
'%s'
)
);
// Increment database rows
$wpdb->insert_id;
echo $surveyResult7;
答案 1 :(得分:0)
我解决了自己的问题。我为有问题的人写了答案。
我不知道为什么,但如果您有(例如)表格中的5个变量,其中一个是字符串,则必须填写表格(所有字段)。如果您跳过其中一个输入,那么&#39;是个问题。最奇怪的是,如果只有数字作为变量发送到数据库,则可以跳过某些字段,代码将使用您的值和空值创建行。