mysql — переполнение стека сообщений

я создал систему обмена сообщениями, на messages.php я хочу показывать сообщения, разговор мудрый и последнее сообщение должно отображаться, но я не знаю запрос, так как я новичок в php вот информация базы данных

  table:conversation_chat            table2:chat
conversation_id: primary unique    id: primary unique
from:                              conversation_id:
to:                                from_user:
time:                              to_user:
message:
subject:

Пожалуйста, если кто-то может помочь мне в этом

 <?php

$req3 = mysql_query("SELECT * FROM `conversation_chat` WHERE
`user_to`='$userid1'");
$hy= mysql_fetch_array($req3);

$convo = $hy['conversation_id'];

if(mysql_num_rows($req3)!=0){

$req4 = mysql_query("SELECT * FROM `chat` WHERE `to`='$userid1' AND

`conversation_id`='$convo'");
while($dn1 = mysql_fetch_array($req4))
{
?>

<td><img alt="example image" src="avatar.png"> &nbsp; &nbsp; <a
href="read?id=<?php echo $dn1['id']; ?>"><?php echo
htmlentities($dn1['from'], ENT_QUOTES, 'UTF-8'); ?></a></td>



<td><span class="label vd_bg-green append-icon">

<?php
echo $dn1['subject']; ?></span></td>
<td style="width:80px" class="text-right">

<strong><?php echo timeAgo($dn1['time']); ?></strong></td><td

style="width:80px" class="text-right">
<?php echo '<a
href="mdelete.php?id='. $dn1['id'] .'">Delete</a>'; ?></td>
</tr>
<?php
}}else{ echo "No new messages";}
?>

0

Решение

Хорошо, вы только что отредактировали информацию в вашей базе данных.
Итак, теперь я понимаю, какова ваша база данных.

Вы должны добавить столбец «время» с типом DATETIME в chat2 «

SELECT *

FROM `chat`

WHERE `to`='$userid1'

AND

`conversation_id`='$convo'

ORDER BY time DESC //Change the order from last to older

Если вы хотите только последнее сообщение, и если это база данных MySQL, вы можете добавить

LIMIT 1
1

Другие решения

Если я правильно понимаю ваш вопрос, вы хотите отобразить одно и только одно сообщение. А именно последний?

Если это правда, измените ваш запрос с

SELECT * FROM `chat` ...

к

SELECT *, max(date) FROM `chat` ...

Выбрать

0

<?php

$req3 = "SELECT DISTINCT conversation_id,column_name FROM `conversation_chat` WHERE
`user_to`='$userid1' ORDER BY conversation_id desc";
$query=mysql_query($req3);
$num=mysql_num_rows($req3);
$hy= mysql_fetch_array($req3);

$convo = $hy['conversation_id'];

if($num!=0){

$req4 = mysql_query("SELECT DISTINCT id,column_name FROM `chat` WHERE `to`='$userid1' AND

`conversation_id`='$convo' ORDER BY id desc ");
while($dn1 = mysql_fetch_array($req4))
{
?>

<td><img alt="example image" src="avatar.png"> &nbsp; &nbsp; <a
href="read?id=<?php echo $dn1['id']; ?>"><?php echo
htmlentities($dn1['from'], ENT_QUOTES, 'UTF-8'); ?></a></td>



<td><span class="label vd_bg-green append-icon">

<?php
echo $dn1['subject']; ?></span></td>
<td style="width:80px" class="text-right">

<strong><?php echo timeAgo($dn1['time']); ?></strong></td><td

style="width:80px" class="text-right">
<?php echo '<a
href="mdelete.php?id='. $dn1['id'] .'">Delete</a>'; ?></td>
</tr>
<?php
}}else{ echo "No new messages";}
?>
-1
По вопросам рекламы [email protected]