您想建立一个创建调查的程序。我无法弄清楚如何为一个没有答案的问题分配价值。谢谢你的帮助。
$dizi = array();
foreach ( $_POST as $key => $value){
if(empty($_POST)){
$_POST="bos";
}
$dizi[$key] = "'".$value."'";
}
答案 0 :(得分:1)
你的代码没有意义,试试这个:
$dizi = array();
foreach($_POST as $key => $value) {
if (empty($value)) {
$value = 'your value';
}
$dizi[$key] = $value;
}
答案 1 :(得分:1)
$ _ POST是associative array 所以你可以通过以下方式访问它:
$bla = $_POST['bla'];
您要做的是将整个数组设置为不起作用的字符串。 将它保存到$ dizi数组时应设置新值。
$dizi = array();
foreach($_POST as $key => $value) {
$newValue = $value;
if (empty($value)) {
$newValue = 'bos';
}
$dizi[$key] = $newValue;
unset($newValue);
}
但这只会检查答案字符串是否为空。所以这只有在所有问题都是强制性的情况下才有效。
答案 2 :(得分:0)
如果我理解正确,你要做的就是:
foreach ( $_POST as $key => $value ) {
if(empty($value))
$_POST[$key] = 'This is an unanswered question!';
}
但由于没有从表单中发布空值,因此无法正常工作。
答案 3 :(得分:0)
如果没有从表单中发布,你怎么知道有“未答复”的问题? 您必须从问题列表开始(不能由用户伪造并在服务器端定义)并检查每个问题的答案是否存在于$ _POST中。如果不是 - 为跳过的答案分配你想要的任何内容。
答案 4 :(得分:0)
试试这个:
if(isset($_POST) && (!empty($_POST))){
foreach ( $_POST as $key => $value ) {
if(empty($value)){
$_POST="bos";
} else{
//put your code
}
}
}