2010-05-19 43 views
0
if ($_SESSION['user_email']!=$_SESSION['ship_user_email']) 
    { 
     $to= $_SESSION['ship_user_email']; 
     mail($to,$subject,$mail_html,$headers); 
    } 

在比较两个会话的值时存在问题。值是不同的,但代码不起作用。比较会话值PHProblem

+4

让我想起狄尔伯特:“老板:用一种他能理解的方式向蒂姆解释问题。 Dilbert:**软件没有工作!!! **' – 2010-05-19 05:59:29

+0

所以你说两个'$ _SESSION'值不相等,但是mail()命令没有运行? – 2010-05-19 06:01:34

+0

雅,mail()命令没有运行... – Aamir 2010-05-19 06:37:09

回答

2

打印两个会话变量的值,并检查它们中是否有前导或尾随空格。
同样用克里所说的'!=='检查条件。
这样

 

if ($_SESSION['user_email'] !== $_SESSION['ship_user_email']) 
    { 
     $to= $_SESSION['ship_user_email']; 
     mail($to,$subject,$mail_html,$headers); 
    } 
 


还通过编写echo语句打印出变量的值检查你的代码的每一步。这将有助于您正确调试和理解代码。

+0

!=使用运算符,!==它不是有效的运算符。 – Aamir 2010-05-19 06:38:41

+0

by echo both vales两个不同的邮件ID打印出来,但没有比较? – Aamir 2010-05-19 06:40:13

+0

!==是一个有效的操作员,请检查手册。澄清http://www.php.net/manual/en/language.operators.comparison.php – 2010-05-19 08:49:56

1

请尝试使用“!==”运算符代替。

0

您可以使用<>此运算符。