簡體   English   中英

在AJAX請求中從MySQL數據庫中獲取大數據

[英]Fetching large data from MySQL database in an AJAX request

我正在構建一個使用Ajax的PHP應用程序。

我正在使用的Ajax代碼是

    function getdetails(id){
var xhr;
if(window.XMLHttpRequest){
xhr = new XMLHttpRequest();
}
else{
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}

xhr.onreadystatechange = function(){
    if(xhr.readyState==4 && xhr.status==200){
        document.getElementById("updateform").innerHTML=xhr.responseText;
    }
}

xhr.open("GET","get_details?id="+id+"&table="+'<?php echo $table_name ?>',true);
xhr.send();
}

處理此問題的PHP函數是

public function get_details(){
        $id = $_GET['id'];
        $table = $_GET['table'];
        $query = $this->db->get_where($table,array('id'=>$id));
        if($query){
            $row = $query->row();
            echo form_open('members/update_detail');
            foreach ($row as $key => $value) {
                echo $key.'     <input type="text" name='.$key.' value='.$value.'><br>';
            }
            echo '</form>';
        }

        //echo $_GET['id'];
    }

我定義了一個ID為“ updateform”的div。 在獲取數據的意義上,代碼可以正常工作。 但是,它沒有獲取全部數據。 例如:在VARCHAR(200)字段中,如果我存儲Stack Overflow ,則僅顯示Stack

我的數據提取方法是否錯誤?

第一個var_dump($row); 並檢查是否符合您的期望。

然后代替

 echo $key.'     <input type="text" name='.$key.' value='.$value.'><br>';

嘗試

echo $key.'<input type="text" name="'.$key.'" value="'.$value.'"><br>';

由於您缺少html輸出中namevalue的引號

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM