PHP mysql多个连接不起作用

时间:2015-01-20 20:46:12

标签: php mysql ajax

我有9张桌子。 我创建了一个名为nTables次的reoursive ajax函数(每个用于表) 在ajax中,我调用action.php并对每个表执行搜索。

问题是在执行搜索时,当我点击SHOW PROCESSLIST;在mysql中,只有一个Query在运行时。在我的前端页面中,搜索是一个接一个地执行而不是同时执行。

我能做些什么才能让mysql一次创建9个连接?

这是我的ajax:

function rAjax(thetables, i, thesearch){
    i++;
    $("#treethetables").hide();
    $("#divsearching").show("slow", function() {});
    var thetable=thetables[i];
    if(i<thetables.length){
        $.ajax({
            type: "POST",
            url: "app/action.php",
            data: ({
                txtBusca : thesearch,
                thetable: thetable,
            }),
            beforeSend: function(){
                $("#"+thetable).html("searching in "+thetable+"...");
            },
            success: function(data){
                totalOkTables--;
                console.warn(totalOkTables);
                if(totalOkTables==0){
                    $("#divsearching").hide();
                    $("#treethetables").show("slow", function() {});
                }
                $("#"+thetable).append(data)
            }
        });
        rAjax(thetables, i, thesearch)
    }
}

这是我对连接的解释:

class vitDb{
    private $conn=NULL;
    private $db=NULL;
    private $selectdb=NULL;
    public $dbase;

    public function vitDb(){ 
        $hostname_conn = "127.0.0.1";
        $database_conn = "myBase";
        $username_conn = "root";
        $password_conn = "";
        $this->conn = mysql_connect($hostname_conn, $username_conn, $password_conn, true) or trigger_error(mysql_error(),E_USER_ERROR);
        $this->selectdb = mysql_select_db($database_conn, $this->conn);
        $this->db=$database_conn;
    }

    public function QSet($sql){//Regresa el Juego aunque esté vacío, y NULL si error.
        if($theSet=mysql_query($sql, $this->conn)){
            return $theSet;
        }else{
            return NULL;
        }
    }
}

电话:

$my = new vitDb();
$db=$my->dbase;
$sql="SELECT * FROM $tabla WHERE ...";
$res=$my->QSet($sql);
#Staff
希望可以帮助我。

1 个答案:

答案 0 :(得分:-1)

浏览器将您限制为两个同时发出的请求。另外,您在服务器端使用PHP会话吗?如果是,则会话文件使用锁定,以便每次会话一次阻止多个请求。