[英]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输出中name
和value
的引号
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.