无法使用if语句发送mail()

时间:2012-04-27 14:53:13

标签: php sendmail

希望有人可以帮我这个???

if (isset($_POST['frame_in']) == "yes") && (isset($_POST['collected1']) == "no") {
mail($mailTo,$subject,$message,$headers); 
}

多一点信息

我试图在以下情况发生时触发自动发送的电子邮件'frames_in'=是和'gather1'=否

2 个答案:

答案 0 :(得分:6)

你的逻辑错了。您想测试$_POST值是否已设置且等于"yes""no"。例如:

(isset($_POST['frame_in']) && $_POST['frame_in'] ==  "yes")

在具有两个条件的代码的上下文中:

if ((isset($_POST['frame_in']) && $_POST['frame_in'] == "yes") 
     && (isset($_POST['collected1']) && $_POST['collected1'] == "no")) {
   mail($mailTo,$subject,$message,$headers); 
}

您的原始代码是将isset()(布尔TRUE/FALSE)的返回值与yesno进行比较,这是永远不会的。

您还有一些不正确的()附件和拼写错误。

开发时,请始终使用error_reporting(E_ALL);ini_set('display_errors', 1);,以便在屏幕上显示语法错误。

答案 1 :(得分:3)

将S_POST更改为$ _POST以开始:)