>  기사  >  백엔드 개발  >  php不解之密解决方法

php不解之密解决方法

WBOY
WBOY원래의
2016-06-13 13:37:07879검색

php不解之密

PHP code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->    
    session_start();
    $p1=$_POST[pin]."_";
    $p2=$_SESSION[pin];
    echo $p1;
    echo $p2;
    echo $_POST[pin]=$_SESSION[pin];--返回1
    if($p1==$p2)
    {
        $_SESSION[pin]=true;
        echo "<font color="#009900">验证码正确</font>";
    }else
    {
        echo "<font color="#FF0000"> 您输入的验证码不正确'</font>";
    }
        
?>



里面的$_POST[pin]为aaa,$_SESSION[pin]的值为bbb
怎么看都不相等,echo $_POST[pin]=$_SESSION[pin];返回1,
请各位帮我看看出了什么问题

------解决方案--------------------
我觉得你有必要先确认一下 $_POST[pin]是不是为 aaa $_SESSION[pin]是不是为bbb

如果是的话 echo $_POST[pin]==$_SESSION[pin] 是不会返回1的.

如果一切都是,那么去洗个手,回来新建个文件重新敲代码测试一下。哈哈哈
------解决方案--------------------
如果不是常量数组里面最好加上引号。效率会差N倍以上,这不是个好习惯
------解决方案--------------------
观看整个代码
若 echo $_POST[pin] == $_SESSION[pin]; //返回1
那么 $p1==$p2 必不成立!因为有 $p1=$_POST[pin]."_";
所以 $_SESSION[pin] 不会被赋予 true
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.