0

我只是想检查表单变量是否为空。代码将变量$getsubject$getsubject设置$_POST为表单,然后我检查它们是否为空,如果它们是我想将它们设置为"No Message"or "No Subject"。我也试过了isset,但没有用。我什至尝试设置一个 else 语句来做同样的事情并且它不会改变它。

$getsubject = $_POST['subject'];
$getmessage = $_POST['message'];

if(empty($getsubject)) {    
    $getsubject = "<No Subject>";
}

if(empty($getmessage)){ 
    $getmessage = "<No Message>";
}
4

3 回答 3

4

我发现了问题.. 代码正在运行 - 但是因为有括号“<”和“>”......当我从 SQL 表中检索数据时,它没有出现。不知道为什么,但是当我删除括号时它起作用了。

于 2013-11-04T18:59:05.197 回答
0

如果您不确定表单中的数据是否存在,则必须在声明变量之前使用 !isset 进行检查,因此:

if(!isset($getsubject)) {    
    $getsubject = "<No Subject>";
}
else{
$getsubject = $_POST['subject'];
}

if(!isset($getmessage)){ 
    $getmessage = "<No Message>";
}
else{
$getmessage = $_POST['message'];
}

例如,来自 的数据$_POST['subject'];可能不存在,如果你声明它,php 会给你一个错误

于 2013-11-04T20:06:01.197 回答
-2

我建议您使用完整的 if 条件来结合 html 来显示您正在寻找的结果。

如果主题有内容然后回显大主题 ELSE 然后回显无主题 END IF

IF 消息有内容然后回显谢谢您的消息 ELSE 然后回显没有输入消息 END IF

^这是基本逻辑而不是代码还查看修剪 php 代码,它将修剪提交的空白区域。这有助于消除空白响应或算作字符的空格(不会删除字符之间的空格)

于 2013-11-04T19:04:12.353 回答