我试图弄清楚这几天,我找不到错误可能是什么。
这是我的代码:
<?php
$page = isset($_POST['page']) ? intval($_POST['page']) : 1;
$rows = isset($_POST['rows']) ? intval($_POST['rows']) : 10;
include 'conn.php';
class get_data extends connection{
public function __construct($page,$rows){
$s_page=mysql_real_escape_string($page);
$s_rows=mysql_real_escape_string($rows);
$this->get_all($s_page,$s_rows);
}
public function get_all($page,$rows){
$this->connect_to_db();
$tablename = $this->define_table_name();
$offset = ($page-1)*$rows;
$result = array();
$rs = mysql_query("select count(*) from $tablename");
$row = mysql_fetch_row($rs);
$result["total"] = $row[0];
$startq="select * from $tablename limit $offset,$rows";
$rs = mysql_query("select * from $tablename limit $offset,$rows");
$items = array();
while($row = mysql_fetch_object($rs)){
array_push($items, $row);
}
$result["rows"] = $items;
echo json_encode($result);
}
}
$getdata=new get_data($page,$rows);
?>
输出为{"total":"3","rows":[]}
问题是:行是空的,但它计算db中有多少行,这意味着连接是好的,但行的查询没有任何建议?
答案 0 :(得分:1)
在建立与数据库的连接之前,您mysql_real_escape_string
参数。 mysql_real_escape_string
需要与数据库的现有连接才能完成其工作。如果没有,它将尝试自己建立连接,这很可能会失败,这意味着您的参数为null
。
如果您已经启用了错误报告,或者只是var_dump
各种变量,那么您应该很容易理解错误报告或调试您的应用。