php - 如何修复php非法偏移错误
问题描述
我正在尝试使用数组将多个单选按钮值插入到数据库中,但出现错误
警告:C:\wamp64\www\Projet Apache\My website\html\addquestionrequest.php 中的非法偏移类型在第 40 行
这是我正在处理的代码的一部分
$questionid = $donnees['Questionid'];
$insertArray = array(
[0]=> array(
['Questionid'] =>$questionid,
['Options'] => $_POST['Option_1'],
),
[1]=> array(
['Questionid'] =>$questionid,
['Options'] => $_POST['Option_2'],
),
[2]=> array(
['Questionid'] =>$questionid,
['Options'] => $_POST['Option_3'],
),
[3]=> array(
['Questionid'] =>$questionid,
['Options'] => $_POST['Option_4'],
));
if (!empty($_POST['Option_1']) && !empty($_POST['Option_2']) && !empty($_POST['Option_3']) && !empty($_POST['Option_4']))
{
foreach ($insertArray as $key => $value) {
$db->exec('INSERT INTO answerproposal(Questionid,Options) VALUES(\'$value["Questionid"]\', \'$value["Options"] \')');
}
echo "question ajoutée";
}
else {
echo " erreur option 1";
}
解决方案
创建数组时,您的数组键不应包含括号。
$insertArray = array(
0 => array(
'Questionid' => $questionid,
'Options' => $_POST['Option_1']
),
1 => array(
'Questionid' =>$questionid,
'Options' => $_POST['Option_2']
),
2 => array(
'Questionid' =>$questionid,
'Options' => $_POST['Option_3']
),
3 => array(
'Questionid' => $questionid,
'Options' => $_POST['Option_4']
)
);
推荐阅读
- php - wordpress wp_remote_post 从另一个 wordpress 站点获取响应
- .net - 在开发 Dynamics CRM 2011 中找不到类型或命名空间名称
- android - 在 React-Native 中添加 React-Native-Admob
- swift - 如何在用户编辑时更新 NSTextField 对象的值?
- html - 在 html 中使用 class 或 id 作为 header 和 section 是否是一种规范
- javascript - 将带有换行符的文本从 Javascript 设置为 HTML
- dictionary - 启用 RFC 的功能模块中键值列表的数据结构?
- spring - 搜索方法中的 ResourceNotFoundException
- python - 图像导数 - Python SciPy 中的 Sobel 过滤器
- javascript - 通过MVC更新JS模型不改变