Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ajax、PHP和mysqli_Php_Jquery_Ajax_Mysqli - Fatal编程技术网

Ajax、PHP和mysqli

Ajax、PHP和mysqli,php,jquery,ajax,mysqli,Php,Jquery,Ajax,Mysqli,当我使用ajax调用我的php文件时,几乎需要整整30秒才能显示任何结果 我怎样才能使结果更即时 我的ajax是: $("#j_search").keyup(function(){ if(($.trim($(this).val()) != '') & ($(this).val() != ' ')){ $.post('../php/ajax/j_search.php', {search: $(this).val()}, function(data

当我使用ajax调用我的php文件时,几乎需要整整30秒才能显示任何结果

我怎样才能使结果更即时

我的ajax是:

$("#j_search").keyup(function(){

        if(($.trim($(this).val()) != '') & ($(this).val() != ' ')){

            $.post('../php/ajax/j_search.php', {search: $(this).val()}, function(data){
                $(".matched_results").html(data).show();
            });
        }
    });
如果您出于某种原因认为我的php是错误的,那么请编写一个您自己的示例,我将对此进行测试,尽管我对此表示怀疑。我不能给php的源代码

我可能会因为发布代码而被炒鱿鱼,但在这种情况下,这似乎是值得的。。 以下是PHP的一个片段:

class SQL_COMMANDS{
    //Connecting vars
    private $_HOST = "localhost";
    private $_USER = "root";
    private $_PASS = "dud";
    private function HANDLE($ERRORNUM, $ERRORMSG){//USED FOR ERROR HANDLER
        $HANDLE = new HANDLE();
        $HANDLE->DIRECT($ERRORNUM, $ERRORMSG);
    }

    function connect($DB){
        $con=mysqli_connect($this->_HOST,$this->_USER,$this->_PASS,$DB);
        if (mysqli_connect_errno($con)){
            $this->HANDLE("001","Connection failed (DB)");
        }
        return $con;
    //  mysqli_close($con);
        //$SQL_COMMANDS->connect("DB");
}

    function SQL($DB, $SQL){//Construct used to transact CONNECT
        return mysqli_query($this->connect($DB), $SQL);
    //  mysqli_close($this->connect($DB));
        //$SQL_COMMANDS->SQL("DB", "SELECT * FROM TABLE WHERE ID=1");
    }


    function Assoc_Grab($DB, $SQL, $ARRAYGRAB){//Returns Data associated with the ARRAY directed from the QUERY
        $DATA = array();
        $ROW = mysqli_fetch_assoc($this->SQL($DB, $SQL));
        foreach($ARRAYGRAB as $pointer){
            array_push($DATA,$ROW[$pointer]);
        }
        //print_r($SQL_COMMANDS->Assoc_Grab('DB', "SELECT * FROM TABLE WHERE ID='1'", array('NAME')));
        return $DATA;
    }
}

您的服务器托管在哪里?您是否进行了基线ping测试以检查延迟问题

尝试创建一个只回显单个数字、字母等的php页面,然后使用google chrome developer工具在控制台中运行以下操作:

$.get('../php/ajax/j_search.php', function(data){
    console.log(data);
});

在完成$.get之后,还值得检查网络选项卡以查看其结果。将鼠标悬停在蓝色时间线栏上。它将为您提供连接、等待、发送和接收的时间明细

您编写的JavaScript代码没有任何错误。这肯定是PHP或您使用的服务器的问题

尝试用以下简单代码替换您的PHP(即:PHP/ajax/j_search.PHP):

<?php
echo rand();
?>
与:


您是否尝试过使用
。/php/ajax/j_search.php
只是
看看它在回显ajax发布的数据时响应有多快?如果您获取其他url,例如
test.txt
-文件,它是否仍然很慢?如果您在j#u search中键入“test”一词,您将触发ajax 4次,这可能就是它的feals变慢的原因。您的php文件从何处提取数据?尝试在整个php执行过程中回显时间戳,看看它的速度有多慢。您添加到编辑中的php不包括处理POST响应的部分。它托管在我的本地主机上,我不认为这是您的建议,通过FormOok提交时会立即加载相同的代码,因此这将其缩小到php,我们可以看看我提供的php吗?哇,我把主机改成了127.0.0.1,现在可以用了。。。为什么会造成延误?
private $_HOST = "localhost";
private $_HOST = "127.0.0.1";