PHP无限Ajax循环:有问题吗?

PHP无限Ajax循环:有问题吗?,php,jquery,ajax,Php,Jquery,Ajax,我的问题: ajax调用的无限循环会产生问题吗 给定的代码如下: ajaxcall(); function ajaxcall(){ jQuery.ajax({ type: "POST", url: myurl, data: mydata, cache: false, success: function(data){ if (something ) {

我的问题: ajax调用的无限循环会产生问题吗

给定的代码如下:

 ajaxcall();
 function ajaxcall(){

    jQuery.ajax({
        type: "POST",
        url: myurl,
        data: mydata,
        cache: false,
        success: function(data){
            if (something )
            {
                 ajaxcall();
            }
        },
        error: function(){},
        complete: function(){}
    });
 }
如您所见,在执行ajaxcall时,如果
something
为true,它将再次执行
ajaxcall()

在这种情况下,
something
条件每次都为true,它会导致导航器、服务器或其他方面出现问题吗?如果“是的,会有大问题”,有什么方法可以防止这种情况

谢谢你的关注

回答后更新

我这样问是因为在检查我的WordPress登录页面时,我想知道会发生什么:

如果有人意图不好,请打开navigator inspector,在表单中查找输入的名称以生成数据[在本例中为'log'和'pwd',并使用此类代码使用navigator控制台查找登录名[,以及密码后]

在对返回的数据设置条件时

 sendCheckFormAnswer();
 function sendCheckFormAnswer(){

    jQuery.ajax({
        type: "POST",
        url: myLoginPostUrl,
        data: {log:generatedLogin,pwd:generatedPassword},
        cache: false,
        success: function(data){
            if (data.indexOf(badLoginMessage)>=0)
            {
                 codeTogenerateANewLogin();
                 sendCheckFormAnswer();
            } else {
                 alert(generatedLogin);
            }
        },
        error: function(){},
        complete: function(){}
    });
 }
此外,这是我的登录表单页面:

<form name="loginform" id="loginform" action="http://www.###########.fr/wp-login.php" method="post">
    <p>
        <label for="user_login">Identifiant<br>
        <input type="text" name="log" id="user_login" class="input" value="" size="20"></label>
    </p>
    <p>
        <label for="user_pass">Mot de passe<br>
        <input type="password" name="pwd" id="user_pass" class="input" value="" size="20"></label>
    </p>
    <p class="forgetmenot"><label for="rememberme"><input name="rememberme" type="checkbox" id="rememberme" value="forever"> Se souvenir de moi</label></p>
    <p class="submit">
        <input type="submit" name="wp-submit" id="wp-submit" class="button button-primary button-large" value="Se connecter">
        <input type="hidden" name="redirect_to" value="http://www.saint-pierre-de-curtille.fr/wp-admin/">
        <input type="hidden" name="testcookie" value="1">
    </p>
</form>


标识符

路况

Se moi纪念品


错误登录和错误密码返回错误登录消息。良好的登录和错误的密码返回错误的密码消息。

您可能希望使用短的setTimeout()进行第二次呼叫。除此之外,这是一种非常常见的技术,它导致的唯一问题是增加您的请求。

当然,它可能会导致问题,不断地用请求攻击您的服务器,这是由加载该页面的浏览器或其他客户端的数量造成的。。。如果您询问这是否会导致浏览器出现问题,浏览器不会特别关心是否发生了这种情况,您可能会看到随着越来越多的客户端不断访问您的服务器,这些请求完成的等待时间会增加。。。为了防止出现这种情况,我建议您重新访问服务器上不断出现这种请求的其余部分,看看是否有更好的方法来处理这种事情……

这取决于您正在尝试做什么。如果您希望显示通知消息或类似内容,则可能应该使用setTimeout函数。因此,当其错误或继续时,它停止


你也应该考虑使用GET而不是POST。Get发送一个标头,相对而言速度更快

基本上,如果你需要这样做,那么你就做错了。最好确切地告诉我们你想做什么,这样我们才能引导你朝着正确的方向前进,而不是简单地问这是否是个问题。