【问题标题】:HTTP POST does not work after switching DNS切换 DNS 后 HTTP POST 不起作用
【发布时间】:2013-10-24 15:52:18
【问题描述】:

最近我换掉了一个 GoDaddy 主机并将请求的 DNS 服务器定向到另一个我的服务器。 方向指向一个文件夹。

发生的情况是我在提交表单以实际登录之前尝试通过 ajax 登录进行验证。

AJAX 调用并执行一个 php,但数据没有通过 POST 传递,就好像它们在请求中丢失了一样。 然而PHP是在AJAX请求中运行,甚至按我想要的方式返回一条消息,但是数据是通过ajax发送的,就好像他们得到了什么一样。

我尝试通过邮寄直接发送表单并导致同样的错误。我相信 POST 在引导 DNS 时可能会迷失方向。有可能吗?

无论如何,我要离开 HTML、AJAX 和 PHP: 注意:我正在使用 CodeIgniter。 HTML:

<?php echo form_open('usuarios/login', array('method' => 'post', 'id' => 'form-login')) ?>
    <div class="boxform">
        <label for="loginnome">Usuário ou E-mail:</label>
        <input type="text" name="loginnome" required id="loginnome" placeholder="Usuário ou E-mail" title="Usuário ou E-mail">
    </div>
    <div class="boxform">
        <label for="loginsenha">Senha:</label>
        <input type="password" name="loginsenha" required id="loginsenha" placeholder="Senha" title="Senha">
    </div>
    <div class="boxform">
        <input type="submit" class="button submit-claro" value="Logar" title="Logar">
    </div>
<?php echo form_close(); ?>

AJAX:

$('#form-login').validate({
    rules: {
        loginnome: {
            required:true,
            maxlength:100
        },
        loginsenha:{
            required:true,
            maxlength:30
        }
    },
    submitHandler: function( form ){

        $.ajax({
            type        : "POST",
            url         : get_url()+"usuarios/validar_login",
            dataType    : 'json',
            data        :       {
                'usuario'   : $('#loginnome').val(),
                'senha'     : $('#loginsenha').val()
            },
            success     : function(data){
                console.log(data);
                if (data.usuario === false) {
                    $('.msg_error p').show();
                    $('.msg_error p').html('');
                    $('.msg_error p').html('Usuario inválido');
                    $('#loginnome').val('').focus();
                }
                else {
                    if (data.senha === false) {
                        $('.msg_error p').show();
                        $('.msg_error p').html('');
                        $('.msg_error p').html('Senha incorreta');
                        $('#loginnome p').val('').focus();
                    }
                    else {
                        inicia_sessao(data.url);
                    }
                }
            }
        });

        //return false;
    }
});

PHP:

public function validar_login()
{
    $usuario        = $this->input->post('usuario');
    $senha          = $this->input->post('senha');

    $return         = $this->usuario->valida_login($usuario,$senha);
    $return['url']  = site_url();
    echo json_encode($return); die;
}

【问题讨论】:

  • 注意:LocalHost -> 工作正常!

标签: php jquery ajax post dns


【解决方案1】:

您可能需要联系您的提供商来解决此问题,因为它直接/间接地在他们的控制之下。

【讨论】:

  • @AlamoPS 不客气 :)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-03-24
  • 1970-01-01
  • 1970-01-01
  • 2015-02-02
  • 1970-01-01
相关资源
最近更新 更多