【发布时间】:2013-09-18 23:24:37
【问题描述】:
我正在尝试获取两个表单字段并检查用户是否在这两个字段中输入了任何内容。如果字段已填写,我想通过电子邮件发送用户输入的字段的值。如果字段为空或仅填充空格,我想在电子邮件中显示一条通用文本消息,指出这些表单字段为空。我尝试了 empty()、isset() 和每个变量的许多不同变体,并检查变量是否等于 NULL 并且都什么都不做。我想知道我做错了什么,它必须相当简单。
HTML
<div class="formField">Desired UserName: <input type="text" name="userName" style="width:200px;" value="" /></div>
<div class="formField">Desired Password: <input type="text" name="userPass" style="width:200px;" value="" /></div>
PHP
$userName = $_REQUEST['userName'];
$userPass = $_REQUEST['userPass'];
if ($userName === NULL ) {
$userName = "Use Generic Username, No Preference Entered";
}
if ($userPass === NULL ) {
$userPass = "Use Generic Password, No Preference Entered";
}
$MESSAGE_BODY .= "Desired Username: ".$_POST["userName"]."\r\n";
$MESSAGE_BODY .= "Desired Password: ".$_POST["userPass"]."\r\n";
【问题讨论】:
-
不要费心检查
null。如果请求参数是set(例如isset($_REQUEST['userName']),它们永远不会是null -
使用
if (isset($_REQUEST['username']))而不是先分配给变量。