gpt4 book ai didi

php - 如何在 else 函数中使用 if 函数

转载 作者:行者123 更新时间:2023-12-04 15:28:25 24 4
gpt4 key购买 nike

我正在尝试在 preg_match 命令的 else 函数中使用 if 函数。

$month1data 是从 CURL 中获取的,并且已经过检查可以正常工作。

下面的代码是:

global $attempt;
$attempt = mysql_escape_string($_GET['attempt']);

if (preg_match('/<td colspan=8(.*)<\/table/s', $month1data, $matches)) {
//Content found do stuff here

unset ($ch);
unset ($cache);
unset ($firstmonthdata);
unset ($matches);
} else { // start else preg match
if ($attempt = '3') { //start if attempt = 3

echo 'failed 3 times - showing error';
echo '<script type="text/javascript">
<!--
window.location = "http://www.website.com/error.php?error=2"
//-->
</script>';

} // end if attempt = 3
else { //start if attempt dont = 3

echo 'keep trying for 3 times';
$attempt = $attempt +1;
echo '<script type="text/javascript">
<!--
window.location = "http://www.website.com/page.php?email=' . $email . '&password=' . $password . '&attempt=' . $attempt . '"
//-->
</script>';
}// end if attempt dont 3 else
} // end else preg match

然而,无论何时加载页面,它都会直接指向错误页面:

"http://www.website.com/error.php?error=2"

我看过其他几篇文章,但看不出哪里出了问题,是否可以通过这种方式实现这些方法,或者只是缺少了什么?

最佳答案

应该是:

if ($attempt === '3') {
^^^

您正在将 3 分配给 $attempt

或者更好,因为似乎不涉及数据库:

$attempt = (int) $_GET['attempt'];

...

if ($attempt === 3) {

编辑:除此之外,您最好使用 session 进行此类尝试检查,因为访问者可以轻松操纵查询字符串。

关于php - 如何在 else 函数中使用 if 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14122882/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com