有没有办法在发布空PHP变量时不显示错误消息?我正在接受并拒绝预订,我在表格中有两个复选框:
echo "<form action='ConfirmAcceptance.php' method='post'>";
while($check = mysql_fetch_array($pending)){
?>
<tr>
<input name='approve[]' type='checkbox' value="<?php echo $check['R_No']?>">
'<input name='decline[]' type='checkbox' value="<?php echo $check['R_No']?>">
<td><?php echo $check['ID_No']?></td>
<td><?php echo $check['F_Name']?></td>
<td><?php echo $check['L_Name']?></td>
<td><?php echo $check['Req_Unit']?></td>
<td><?php echo $check['Mob_No']?></td>
<td><?php echo $check['E_mail']?></td>
<td><?php echo $check['Ev_Name']?></td>
<td><?php echo $check['v_name']?></td>
<td><?php echo $check['Office_Approval_Status']?></td>
<td><input type='text' name='comments[]' value=' '/></td>
</tr>
<?php
}
echo"<input type='submit' value='Approve' class='Log'>";
?>
</table>
这里是confirmmacceptance.php,我发布了我的内容:
$status="Approve";
$status2="Decline";
$reservation= $_POST['Approve'];
$decline=$_POST['decline'];
$comments=$_POST['comments'];
当我没有检查被拒绝的项目时,它显示一个错误项目,因为POST变量为空是否有办法不发布错误消息?提前谢谢!
答案 0 :(得分:4)
设置error_reporting(0);
但是如果你在实际使用之前使用isset($var)
检查变量会更好。
答案 1 :(得分:3)
你可以这样做
if(isset($_POST['Approve']) && !empty($_POST['Approve'])){
$reservation= $_POST['Approve'];
}
答案 2 :(得分:2)
使用isset和三元运算符确保在未传递参数时不进行调用:
$reservation= isset($_POST['Approve']) ? $_POST['Approve'] : 'DEFAULT_VALUE_HERE';
如果你感觉懒惰,请创建一个函数来包装这样的行为:
function p($arg, $default = '') {
return isset($_POST[$arg]) ? $_POST[$arg] : $default;
}
$reservation = p('Approve', 'NOT PASSED');
$decline = p('decline');