<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>分页</title>
</head>
<body>
<?php
//**1.传入页码**/
$page = $_GET['p'];
//**2.根据页码取出数据:php->mysql处理
$host="localhost";
$username="root";
$password="";
$db="myapp";
//连接数据库
$conn = @mysql_connect($host,$username,$password);
if(!$conn){
echo "数据库连接失败";
exit;
}
//选择数据库
mysql_select_db($db);
//设置数据库编码
mysql_query("SET NAMES UTF8");
//编写sql语句SELECT * FROM 表明名 起始位置 显示条数
$sql = "SELECT * FROM user LIMIT '.($page-1)*10.',10";
//把sql语句传送数据中
$result = mysql_query($sql);
//处理数据
while ($row = mysql_fetch_assoc($result)){
echo $row['id'].'-'.$row['name'];
}
//**3.显示数据+分页条
?>
</body>
</html>因为时间过去太久了,这个就留个后人查看。 我也碰到一模一样的问题,但是解决了。将$result = mysql_query($sql);替换为$result = mysql_query($sql) or die(mysql_error()); 就可以查出原因。我的反馈的是数据库没有被选择,就像上面说的assoc得不到数据。所以查找了链接的数据库,因为是调用的mysqli进行链接的。替换了以后就没有问题了。
<?php
header('content-type:text/html;charset=utf-8');
$mysqli=@new mysqli('localhost','root','','xitong');
if($mysqli->connect_errno){
die('数据库连接不成功,错误编号'.$mysqli->connect_errno.' 错误信息: '.$mysqli -> connect_error);
}
$mysqli->set_charset('utf8');
?>
替换为了现在的
<?php
require_once('config.php');
header('content-type:text/html;charset=utf-8');
if(!($con = mysql_connect('localhost','root',''))){
echo "失败原因:".mysql_error();
}
if(!(mysql_select_db('xitong'))){
echo mysql_error();
}
if(!(mysql_query('set names utf8'))){
echo mysql_error();
}
?>
是不是你的数据不够?
我也是这样的错误,楼主有没有解决呀
楼主,你有没有解决这个问题呀,我也遇到了同样的错误。。。
$pagea= ($page-1)*10;
$sql = "SELECT * FROM users LIMIT $pagea,10";