我正在修改现有的PHP / HTML实时站点,以基于一些新的年龄验证标准添加一些新的条件语句。
页面现在已加载,但是添加这些新条件后,我的旧表单不再发布。
基本上,我在现有页面周围的if / else if / else if结构中插入了3个新条件,并根据这些检查进行重定向。
以前,只有一组页面重定向,并且代码运行良好。现在,它适用于某些条件,但不适用于其他条件。
/** Old (Working) Code: **/
if ($var > 0) { //existing working conditions
// Some code
if ($var2 > 0) { //existing working conditions
// end old stuff that works)
/** New (broken) code: **/
if (($type == 'R') && ($age > '17')) { /// Type R AND 18 or older
if ($adult == "0") {
header('location: adult.php?test=' . $id . '');
} else if ($a_values == "0") {
header('location: a_values.php?test=' . $id . '');
}
//(many more pages to check)
} else if (($type == '') && ($age > '17')) { /// No Type AND 18 or older
if ($adult == "0") {
header('location: adult.php?test=' . $id . '');
} else if ($a_values == "0") {
header('location: a_values.php?test=' . $id . '');
}
// (many more pages to check)
} else if (($type == 'C') && ($age < '18')) { // else Type C OR not 18 yo
if ($not_adult == "0") {
header('location: not_adult.php?test=' . $id . '');
} else if ($not_adult_values == "0") {
header('location: not_adult_values.php?test=' . $id . '');
}
// (many more pages to check)
} else { // end ((new stuff)) and execute the rest of page if none of the if/else conditions and redirects are met
}
// ((old stuff that works))
} // end $var2
} // end $var
我不想使用其他编码方法,我只想弄清楚正确的逻辑/语法,以便页面像以前一样正常工作,并且下面的表单可以正确处理。
答案 0 :(得分:0)
我不知道是不是这种情况,但是如果您在任何header()之前都有HTML代码,则可能是代码无法正常工作的原因。