我正在为我的网站制作一个登录脚本。
它向用户传递等的另一台服务器发送POST
(使用curl
)
如果信息有误,则返回Bad login
但是当我检查答复时,即使它是错误的,也会说登录成功。
if ($result === "Bad login"){
$password_status = 'Wrong password.';
$error = true;
}
我也试过strcmp
但没有成功。
答案 0 :(得分:1)
是的,请尝试var_dump($ result),因为它可能包含其他字符。
也许试试:
<?php
if (strpos(strtolower($result), 'bad login') !== false) {
$error = true;
}
答案 1 :(得分:0)
$ result的确切值是多少?你的完整if语句是什么?
$ result必须是完全匹配,例如:
echo ('Bad login' === 'Bad login') ? 'True<br />' : 'False<br />'; // True
echo ('Bad login ' === 'Bad login') ? 'True<br />' : 'False<br />'; // False (Space after login)
echo ('Bad Login' === 'Bad login') ? 'True<br />' : 'False<br />'; // False (Capital L on login)
修改强>
这就是我要比较的方式:
$result = trim(strtolower($badLoginVariable));
if($result === 'bad login') {
// Do stuff here
}