php - 通过 AJAX 请求从 MySQL 数据库获取大数据

标签 php mysql ajax codeigniter

我正在构建一个也使用 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 的引号

关于php - 通过 AJAX 请求从 MySQL 数据库获取大数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23858290/

相关文章:

java - hibernate 强制时间戳以保持/加载为 UTC

php - 将 PHP 代码从 MySQL 迁移到 MS SQL Server

javascript - 如何在 jQuery 中动态生成可折叠集?

PHP:将特定波斯尼亚语字符转换为非波斯尼亚语(utf8 标准字符)

php - 使用简码时将 css 添加到 WordPress

PHP PDO 最大值

php - 如何让zend在sql中设置time_zone

PHP 循环创建重复的数据库行

php - AJAX 请求后返回不需要的新行

javascript - 使用 Node Express JS 在 AngularJS 中重复 ajax 调用