나는 데이터베이스를 사용하는 채팅을하고 있습니다. 메시지를 표시 할 때 이전 메시지가 맨 위에오고 새 메시지가 맨 아래에옵니다. 새 메시지가 맨 위에 올 수 있도록 어떻게 만들 수 있습니까? 나는 이미 ORDER BY Username DESC
을 시도했지만 알파벳 순서로만 만들었다.PHP & SQL의 아래에서 위로 읽으십시오
이것은 당신은 당신의 chatterdata 테이블에 타임 스탬프 필드를 추가해야 내 전체 코드
<html>
<head>
<title>Jetup</title>
</head>
<body>
<form name="chatform" action="<?php echo $_SERVER['PHP_SELF']?>" method="post">
<input type="text" name="chatuser"/>
<input type="text" name="chatinput"/>
<input type="image" name="send" value="Verzenden"/>
<br/>
<?php
$connection = mysql_connect("localhost","root","usbw") or die ("Kon geen verbinding maken");
mysql_select_db("chat") or die("Kan geen database selecteren");
if(isset($_POST['chatinput']) && isset($_POST['chatuser'])){
$input = $_POST['chatinput'];
$user = $_POST['chatuser'];
$query = "INSERT INTO chatterdata (Username, Message) VALUES ('".$user."', '" .$input."')";
mysql_query($query) or die(mysql_error());
}
$display = mysql_query("SELECT * FROM chatterdata ORDER BY Username DESC, Message DESC");
while($row = mysql_fetch_array($display)){
echo($row['Username'] . " : " .$row['Message'] . "<br/>");
}
?>
</form>
</body>
메시지의 datetime에 의한 정렬. INSERT INTO chatterdata (Username, Message, created_at) VALUES (... NOW())' – Waygood
사용자 이름으로 주문하는 대신 날짜순으로 주문하십시오. 또는 날짜순으로 주문한 다음 사용자 이름순으로 주문할 수도 있습니다. '주문 날짜 DESC, 사용자 이름 DESC' –
Google에서 임의의 솔루션을 검색했습니다 ... –