وعليكم السلام ورحمة الله وبركاته
الملف الذي اوردته يبين أنك تستعلم من جدول الردود في المنتدى الذي انشأته , وبالتالي ما سيعرضه هو اسم مؤلف الموضوع , والتاريخ , ثم الموضوع (الرساله).
لكن اين الإستعلام الذي سيعرض الموضوع ؟ والتي يفترض أن يستعلم بدلالة معرفها -id_sujet_a_lire - او ما يقوم مقام الـforegn Key للربط بين االجدولين ...
تحتاج لتنفيذ ما ذكرت جدولين : الأول به المواضيع , والأخر به الردود على كل جدول على حده , يرتبط الأول بالثاني بأن يتم تخزين معرف الموضوع X في جدول الردود كـ مفتاح مرجعي يستعلم بدلالته , للحصول على كل الردود المتعلقه بالموضوع الأصلي .(وهذا يبدوا انك فعلته لكن اين هو استعلامه ؟)
من ثم تحتاج إلى استعلامين الأول يعطيك معلومات الموضوع الرئيسي :
بامكانك طباعتها في كود يشبه ما يلي :
كود PHP:
<div id=MainTopcAuthor style=width:30% float: left; font-weight: bold; >
// here you but the code that print the author
<span id=mainTopicDate style=width: 100%; float:left; clear: left>
//here you put the code that prints the Main Topic Date...
</span>
</div>
<div id=mainTopicMessg style=width: 69%>
// here the Main topic Messege ...
</div>
ثم
تجري الإستعلام الذي اوردته هنا , لإستخراج جميع الردود المتعلقه بالموضوع X بدلالة رقمه المرجعي المخزن في جدول الردود في حالتك هذه هو "id_sujet_a_lire"...
ويكون الكود كالتالي :
كود PHP:
// on se connecte à notre base de données
$base = mysql_connect ('localhost', 'root', '');
mysql_select_db ('forume', $base) ;
// on Page Rankingépare notre requête
$sql = 'SELECT auteur, message, date_reponse FROM forum_reponses WHERE correspondance_sujet ="'.$_GET['id_sujet_a_lire'].'" ORDER BY date_reponse ASC';
// on lance la requête (mysql_query) et on impose un message d'erreur si la requête ne se passe pas bien (or die)
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
// on va scanner tous les tuples un par un
while ($data = mysql_fetch_array($req)) {
// on décompose la date
sscanf($data['date_reponse'], "%4s-%2s-%2s %2s:%2s:%2s", $annee, $mois, $jour, $heure, $minute, $seconde);
// on affiche les résultats
echo '<div class=theRespoDateOher style=width:30%; float: left; font-weight: bold;>';
// on affiche le nom de l'auteur de sujet ainsi que la date de la réponse
echo htmlentities(trim($data['auteur']));
echo '<span class=theRespoDate style=clear: left; width: 100%;>';
echo $jour , '-' , $mois , '-' , $annee , ' ' , $heure , ':' , $minute;
echo '</span></div>
<div class=theRespoMessage style=float: left; display: inline; width: 69%;> ';
// on affiche le message
echo nl2br(htmlentities(trim($data['message'])));
echo '</div>';
}
// on libère l'espace mémoire alloué pour cette reqête
mysql_free_result ($req);
// on ferme la connection à la base de données.
mysql_close ();
وبدون الحاجة لأن يكون لديك جداول ايضا ....
بهذا يكون تنفيذ صفحتك اسرع , وحجمها أقل ,,, وتحكمك في خصائصها بواسطة CSS اكبر واكثر مرونه .
جرب وان شاء الله نكون ساعدناك فعلا ...
السلام عليكم