اذهب إلى المحتوى

السؤال

نشر

الكود التالي يستدعي الرسائل من القاعدة لكنه يعرض  الرسائل الواردة من العضو الاخر كيف نجعلة يعرض المحادثة كاملة بين العضوين المرسل والمستقبل

<?php
$stmt = $db->prepare('SELECT * FROM messages WHERE recipient_id = ? AND sender_id =? Order By id desc');
$stmt->bind_param('ii', $_SESSION['id'], $_GET['to']);
$stmt->execute();
$result = $stmt->get_result();
while ($row = $result->fetch_assoc()) 
{

echo '<div class="div_messages">'.$row['sender_name'].'<br />'.$row['date'].'<br />'.$row['message'].'</div>' ;  
}
$stmt->close();
?>

جدول الرسائل

CREATE TABLE `messages` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`sender_id` varchar(256) NOT NULL,
`sender_name` varchar(256) NOT NULL,
`recipient_id` varchar(256) NOT NULL,
`message` text NOT NULL,
`date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY ( `id` )
)ENGINE=MyISAM DEFAULT CHARSET=utf8;

 

Recommended Posts

  • 1
نشر

نلاحظ أن الاستعلام يعمل وفق شرط بتحديد من هو المرسل و من هو المستقبل.

recipient_id = ? AND sender_id = ?

لجلب الرسائل بالاتجاهين يمكننا وضع شرط or و تعديل الاستعلام.

 يمكن أن نضع or ثم نفس الشرط و نبدل بين قيم id لهما.


$Sid = $_SESSION['id']

$Gid = $_GET['to']

WHERE recipient_id = ? AND sender_id =?  OR  recipient_id = ? AND sender_id =?
                     Sid ,          Gid  ,               Gid ,             Sid

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...