Php-获取数据库开头或最后若干条数据
Php-获取数据库开头或最后若干条数据
很多时候往数据库写了很多数据,但我只需要显示最后若干行数据。下面说下如何实现
首先,看下我数据库里的数据,如下图所示:
1.获取数据库开头前3条数据(SELECT * FROM testdata order by id limit 3)
header("Content-type:text/html;charset=utf-8");
$dbhost = 'localhost'; // mysql服务器主机地址
$dbuser = 'root'; // mysql用户名
$dbpass = 'root'; // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
die('连接失败: ' . mysqli_error($conn));
}
// 设置编码,防止中文乱码
mysqli_query($conn , "set names utf8");
$sql = "SELECT * FROM testdata order by id limit 3"; #获取数据库开头前3条数据
mysqli_select_db( $conn, 'mysql' );
$retval = mysqli_query( $conn, $sql );
$data = array();
if(! $retval )
{
die('无法读取数据: ' . mysqli_error($conn));
}
while($row = mysqli_fetch_array($retval,MYSQLI_ASSOC))
{
$data[]=$row;
sort($data);
}
echo json_encode($data,JSON_UNESCAPED_UNICODE);
mysqli_close($conn);
?>
2.运行显示:
3.获取数据库最后3条数据(SELECT * FROM testdata order by id desc limit 3)
header("Content-type:text/html;charset=utf-8");
$dbhost = 'localhost'; // mysql服务器主机地址
$dbuser = 'root'; // mysql用户名
$dbpass = 'root'; // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
die('连接失败: ' . mysqli_error($conn));
}
// 设置编码,防止中文乱码
mysqli_query($conn , "set names utf8");
$sql = "SELECT * FROM testdata order by id desc limit 3"; #获取数据库最后3条数据
mysqli_select_db( $conn, 'mysql' );
$retval = mysqli_query( $conn, $sql );
$data = array();
if(! $retval )
{
die('无法读取数据: ' . mysqli_error($conn));
}
while($row = mysqli_fetch_array($retval,MYSQLI_ASSOC))
{
$data[]=$row;
sort($data);
}
echo json_encode($data,JSON_UNESCAPED_UNICODE);
mysqli_close($conn);
?>
4.运行显示:
Php-获取数据库开头或最后若干条数据相关教程