php获取MySQL的最新几行数据MySQL里面有个表 表有两个字符属性的字段(内容和时间) 我想抽取表的最新的40行数据 然后在其中随机抽取5个(不重复) 并把它们显示出来 而且显示出来的数据的内容和时间要相对应
该怎么做?
麻烦大神写份好理解的代码
è¯ç¼å代ç 示ä¾å¦ä¸:
//è¿æ¥æ°æ®åº
$db = new mysqli('localhost','test','test','test');
if ($db->connect_errno) {
printf("è¿æ¥æ°æ®åºå¤±è´¥: %s\n", $db->connect_error);
exit();
}
//对æ°æ®åºæ ¹æ®æ¶é´å段æéåºæåºï¼å¹¶æ½ååé¢ç40æ¡è®°å½
$data = $db->query('select * from æ°æ®è¡¨å order by æ¶é´å段å desc limit 40');
$rows = $data->fetch_all(MYSQLI_ASSOC);
//éæºçæ 5 æ¡è®°å½æ°ç»
$rand_arr = array_rand($rows, 5);
//æ ¹æ®çæçéæºæ°ç»ï¼è¾åºè®°å½
for($i=0;$i<5;$i++)
{
echo $rows[$rand_arr[$i]]['name'].' | '.$rows[$rand_arr[$i]]['description'].' | '.$rows[$rand_arr[$i]]['update_time'].'<br/>';
}
?>
示ä¾è¿è¡æªå¾ï¼
ææ³å§ä»æ°æ®åºå¾å°çä¿¡æ¯çå 容æå°å¨messageé£ æ¶é´åæå°å¨timeåªé 该æä¹åï¼
æ¯ä¸æ¯è¦æphpä½ä¸ºåå° ç¶åå§å¾å°æ°ç»ä¼ ç»jså¤çï¼
æ¯å¦ä¼ ç» js å¤çï¼è¦æ ¹æ®å®é éè¦æ¥å®ã
å¦ææ¯å±é¨å®æ¶æ´æ°çï¼å¯ä»¥ä½¿ç¨ ajax ææ¯ï¼é£ä¹ï¼php å°±æ¯å为åå°ï¼æä¾æ°æ®ç» ajaxï¼åè¿è¡é¡µé¢çåç°ã
å¦ææ¯æ´ä¸ªé¡µé¢ï¼å¯ä»¥ç´æ¥ç¨ php è¿å html æ档就å¯ä»¥äºï¼å代ç 大æ¦å¦ä¸ï¼
<div class="media-body response-text-right">
<?php
//æ ¹æ®çæçéæºæ°ç»ï¼è¾åºè®°å½
for($i=0;$i<5;$i++)
{
echo '<p>' . $rows[$rand_arr[$i]]['message'] . '</p>';
echo '<ul><li>'. $rows[$rand_arr[$i]]['time'] . '</li></ul>';
}
?>
</div>
</div>
select * from 表名 by rand limit 4 where in $sql(上一个sql语句)
有字数限制 上图吧
大概就是这样吧 从数据库抽取信息后内容就打印在message那 时间就打印在time那
具体该怎么做呢?