我一直试图用foreach替换$ _POST(s)的每个isset。
这是通过对每个$ _ POST isset真正的代码:
<form method='post'>
<input type='text' name='name'> <br>
<input type='text' name='address'> <br>
<input type='submit' name='send'>
</form>
<?php
if (isset($_POST['name']) && isset($_POST['address']) && isset($_POST['send']))
{
echo "All elements have been submitted";
}
else
{
echo "You forget some elements, try checking name or address";
}
?>
是有办法,我可以使用每个单isset取代上述4 isset(S)? 我做了这个,它出错了。
<form method='post'>
<input type='text' name='nama'> <br>
<input type='text' name='alamat'> <br>
<input type='submit' name='kirim'>
</form>
<?php
foreach($_POST as $value)
{
if (isset($value))
{
echo "All elements have been submitted";
}
else
{
echo "You forget some elements, try checking name or address";
}
}
?>
需要帮助的人,这只是浪费时间,如果我必须为通过post/get发送的每个元素逐个写isset。我见过这样的事情之前在Visual Basic中,我的朋友做一个foreach构造来验证一个表单中的所有文本框,所以他没必要再创造这样的事情:
if textbox1.text="" && textbox.2.text="" and so on
我刚刚有一个想法。我可以用HTML5格式完全替换具有必需属性的isset吗? 无论如何,先谢谢了。我正在处理你写的代码,试着先理解它:) – januaryananda 2014-09-03 01:32:54
肯定的,但可能是使用jquery的attr最好的完成。问另一个问题,我会发布和示例。它并不属于这一个。 – jbrahy 2014-09-03 01:34:41
我不明白这行'if(isset($ required_fields)){'...在这个例子中它总是会返回'true',除非我失去了一些东西。 – 2014-09-03 01:36:12