为什么POST过来的sha1加密字符串相等的判断不对呢。

WBOY
풀어 주다: 2016-06-23 14:12:53
원래의
1748명이 탐색했습니다.

比如我表单post过来了sha1('1')这个加密后的字符串356a192b7913b04c54574d18c28d46e6395428ab。
然后我if($_POST['s']=='356a192b7913b04c54574d18c28d46e6395428ab')
为什么判断为false?
echo $_POST['s']也是356a192b7913b04c54574d18c28d46e6395428ab啊。。


回复讨论(解决方案)

仔细检查一下 $_POST['s'] 是不是那个值

仔细检查一下 $_POST['s'] 是不是那个值 我对过的没错阿。。。我在BAE试的。。一直不明白为什么。。。

你不如用 var_dump() 看看是否包含了空格换行什么的

你不如用 var_dump() 看看是否包含了空格换行什么的
没有的。。而且我也用trim()过滤了的说。。你能不能帮我看看呢。http://hole.icnu.me/t1.php

我复制他的var_dump()输出的引号+值就可以是true。
自己手打引号就是false。。。这是为什么啊??

贴出你的代码,可能不是你说的原因

贴出你的代码,可能不是你说的原因
t.php的代码。。

<?phpecho $_POST['set'].'<br>';var_dump($_POST['set']);if($_POST['set']=="f45918a75f152c9ce0b58043d5e5d7f22358665c")echo 'qw';?>
로그인 후 복사

就是if里面那个双引号手打就false。。不知为什么。。。
http://hole.icnu.me/t1.php 这里post到t.php

贴出你的代码,可能不是你说的原因
应该是编码问题了。转换编码可以了。。


贴出你的代码,可能不是你说的原因
应该是编码问题了。转换编码可以了。。

错了错了。。。我也不知道为什么了。。。

我要重新描述一下了。。。
sha1加密后的字符应该是40个的
post过来后的怎么就变成43个字符了。。。?
在后面的页面重新加密的也是40个字符的。。
但是如果直接把指针指定一个那个加密后的字符串也是43个字符。。。
为什么?

var_dump()post过来的数据
string(43) "?356a192b7913b04c54574d18c28d46e6395428ab" 
var_dump(sha1('1'))
string(40) "356a192b7913b04c54574d18c28d46e6395428ab" 
var_dump('356a192b7913b04c54574d18c28d46e6395428ab')
string(43) "?356a192b7913b04c54574d18c28d46e6395428ab"

你 echo pack('H*', $_POST['set']); 看一下结果

你 echo pack('H*', $_POST['set']); 看一下结果

不好意思,我弄错了!
这样:
print_r(unpack('H*', $_POST['set']));

不好意思,我弄错了!
这样:
print_r(unpack('H*', $_POST['set']));

Array ( [1] => efbbbf33353661313932623739313362303463353435373464313863323864343665363339353432386162 ) 

Array ( [1] =>  efbbbf33353661313932623739313362303463353435373464313863323864343665363339353432386162 ) 

这个 efbbbf 是 utf-8 的 BOM 头
你去掉相关文件的 BOM 头就可以了

Array ( [1] =>  efbbbf33353661313932623739313362303463353435373464313863323864343665363339353432386162 ) 

这个 efbbbf 是 utf-8 的 BOM 头
你去掉相关文件的 BOM 头就可以了

谢了~~

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿