我正在使用脚本向用户显示消息通知,但我的php文件每次从数据库的开头都从数据库中获取数据,我想要的是例如我在我的数据库中有100条消息,脚本已发送给每个人他的消息,并且当新消息存储在数据库中时我不希望php文件再次从0获取消息我希望它从消息号101开始我的意思是每次从最新的消息 在session_start();
$uid=$_SESSION['id'];
include_once('db.php');
$sql = "SELECT * FROM message WHERE msg_to = $uid ";
$res = mysql_query($sql);
$result = array();
while( $row = mysql_fetch_array($res) ) {
$sender_id = $row['msg_to'];
$resultt = mysql_query("SELECT * FROM mem WHERE id= $sender_id");
while($rows = mysql_fetch_array($resultt)) {
$result[] = array('sender_name' => $rows['username'], 'sender_age' => $rows['age'],
'sender_photo' => $rows['image'], 'sender_language' => $rows['language'],
'sender_country' => $rows['country'], 'message' => $row['msg'] );
}
}
echo json_encode(array("result" => $result));
?>
答案 0 :(得分:0)
您可以使用LIMIT
来限制数据库查询的结果。或者您可以使用WHERE
语句仅选择ID大于特定值的行。
LIMIT
的确切语法是:
SELECT <columns>
FROM <table>
ORDER BY <column>
LIMIT <offset>,<amount>
有关详细信息,请参阅MySQL manual。