У меня есть база с сообщениеми чата, как мне сделать так, чтоб при входе показывало с последнего сообщение? И еще если число сообщени привышает $x то удалить первые $y сообщение?
1. SELECT * FROM table_name ORDER BY id DESC LIMIT 1 или SELECT * FROM table_name GROUP BY id HAVING id = MAX(id) LIMIT 1
2. $id = SELECT id FROM table_name ORDER BY id DESC LIMIT $x, 1 DELETE FROM table_name WHERE id <= $id
вернее так, c $x и $y Код (Text): $id = SELECT id FROM table_name ORDER BY id DESC LIMIT $x, 1 if ($id) { $id = SELECT id FROM table_name ORDER BY id DESC LIMIT $y, 1 DELETE FROM table_name WHERE id <= $id }
Смотри у меня в базе так post|tuser|fuser|mess Здесь post время сообщения tuser получатель fuser отправитель mess само сообщение а код такой PHP: <? session_start(); if (!isset($_SESSION['db_is_logged_in']) || $_SESSION['db_is_logged_in'] !== true) { echo "<script language='javascript'>window.open('login.php', '_parent')</script>"; exit; } include 'opendb.php'; $sql = "SELECT * FROM `chat_mess`"; $result = mysql_query($sql) or die(mysql_error()); while($row = mysql_fetch_array($result)){ if(empty($row['tuser'])){ echo "<font color='#0000FF'>".$row['post']."</font><b> ".$row['fuser']." :</b> ".$row['mess']; } else { echo "<font color='#0000FF'>".$row['post']."</font> <b>[".$row['fuser']."<font color=red> to </font>".$row['tuser']."]</b> ".$row['mess']; } } ?> <body onLoad="parent.mainFrame.scroll(0, 9999999)" bgcolor="#33CC66"> Как поступить в этом случии?
А что в нем записывать и где добавить $id = SELECT id FROM table_name ORDER BY id DESC LIMIT $x, 1 if ($id) { $id = SELECT id FROM table_name ORDER BY id DESC LIMIT $y, 1 DELETE FROM table_name WHERE id <= $id } ??