php - 如何将 MySQL 表记录变成 PHP 参数
问题描述
我想从从while循环中获取的单选按钮中检索值,其中name属性是$row['id_question']
,然后我想计算该值,所以我需要array_count_value()
,我不知道如何将其更改$row['id_question']
为参数array_count_value()
。
我收到错误:
未定义索引:& array_count_values() 中的答案期望参数 1 为数组,给定 null
我试图把它变成一个变量
$answer = $_POST['answer']
;
但我认为它不会起作用(有效)
这是代码:
<?php
while ($row = mysqli_fetch_array($result)) {
echo "<br/>" . $row['question'];
echo "<br/>";
echo "
<label class='radio-inline'><span>YES</span>
<input type='radio' class='form-check-label' name= 'answer[".$row['id_question']."]' checked value='1'/>
</label>
<label class='radio-inline'><span>NO</span>
<input type='radio' class='form-check-label' name= 'answer[".$row['id_question']."]' checked value='2'/>
</label>
";
}
$answer = $_POST['answer'];
if (isset($_POST['submit']) ){
print_r($answer);
}
print_r(array_count_values($answer));
?>
解决方案
嗯......似乎你有一条公平的路要走,在这之前它会起作用。:-/
我想我会从打印出$row
s 开始 - 确保你实际上在那个while
-loop 中得到了一些东西。
请记住,在 while 循环之前实例化一个变量,然后在 while 循环中填充它。像这样的东西:
<?php
$answer = '';
while ($row = mysqli_fetch_array($result)) {
// What happens here? :-)
echo "<pre";
print_r( $row );
echo "<pre";
echo "<br/>" . $row['question'];
echo "<br/>";
echo "
<label class='radio-inline'><span>YES</span>
<input type='radio' class='form-check-label' name= 'answer[".$row['id_question']."]' checked value='1'/>
</label>
<label class='radio-inline'><span>NO</span>
<input type='radio' class='form-check-label' name= 'answer[".$row['id_question']."]' checked value='2'/>
</label>
";
}
$answer = $_POST['answer'];
// FALLBACK SO IT DOESN'T CRASH AND BURN
if( ! $answer ){
echo '$answer was null again! I'll save you, by assigning it an empty array. :-) ';
$answer = [];
}
// END OF FALLBACK
if (isset($_POST['submit']) ){
print_r($answer);
}
print_r(array_count_values($answer));
?>
而你得到的错误('Undefined index: answer in'...) - 那是因为$_POST['answer']
没有定义, - 因此$answer
将设置为null。并且array_count_values需要一个数组作为输入,它不能为空。
我希望这有帮助。:-)
推荐阅读
- pandas - 如何在熊猫中找到符合条件的多列的索引
- primefaces - Primefaces 日历弹出窗口不适用于 Google 地图(仅限全屏)
- android - 如何删除 SliderLayout 中的多余点?
- java - 运行多个maven
在平行下 - javascript - 将 vuejs 组件注册拆分到不同的文件
- jboss - 无法访问部署在远程 JBoss 上的 Web 应用程序
- python - Python Maze BFS 最短路径
- sql - 编写存储过程,以便如果一个语句失败它不应该影响另一个?
- sql - 是否可以返回 WHERE IN 查询的缺失值
- c++ - 变量初始化,有什么区别?