Utskrifterna får du lösa med PHP - tråden flyttas därmed från SQL.
Frågan#1
Tjena!
Jag håller på med en gästbok där man kan svara på inläggen som skrivs. Varje inlägg ska kunna ha flera svar.
Koden nedan funkar bra så länge ett inlägg inte har mer än ett svar. Får ett inlägg fler svar så skrivs inlägget ut så många gånger som det finns svar, tillsammans med svaret. Jag vill att inlägget ska skrivas ut en gång, och svaren under inlägget.
Tack!
<?php
// Öppna databasen
require 'includes/db.php';
// Räkna alla inlägg
$get = mysql_query("SELECT ID
FROM Guestbook");
$CountedMessages = mysql_num_rows($get);
// Kontrollera om gästboken är tom
if ($CountedMessages == '0')
{
echo "Det finns inga inlägg<br>";
}
else
{
// Hämta inläggen
$get = mysql_query("SELECT TuGu.ID AS GbokID, TuGu.Time, TuGu.Date, TuGu.Name, TuGu.Mail, TuGu.Message, TuMe.ID AS ThisMemberID, TuMe.Firstname, TuMe.Lastname, TuGa.ID AS AnswerID, TuGa.Time AS AnswerTime, TuGa.Date AS AnswerDate, TuGa.MessageID, TuGa.MemberID, TuGa.Answer
FROM GuestbookAnswers TuGa
RIGHT JOIN Guestbook AS TuGu ON TuGu.ID = TuGa.MessageID
LEFT JOIN Members AS TuMe ON TuMe.ID = TuGa.MemberID
ORDER BY TuGu.Date DESC, TuGu.Time DESC");
while($row = mysql_fetch_array($get))
{
// Hämta från Guestbook
$GbokID = $row['GbokID'];
$Time = $row['Time'];
$Date = $row['Date'];
$Name = $row['Name'];
$Mail = $row['Mail'];
$Message = $row['Message'];
// Hämta från GuestbookAnswers
$AnswerID = $row['AnswerID'];
$AnswerTime = $row['AnswerTime'];
$AnswerDate = $row['AnswerDate'];
$MessageID = $row['MessageID'];
$MemberID = $row['MemberID'];
$Answer = $row['Answer'];
// Hämta från Members
$ThisMemberID = $row['ThisMemberID'];
$Firstname = $row['Firstname'];
$Lastname = $row['Lastname'];
// Kontrollera om det finns något svar
if ($Answer <> '')
{
echo "<b>$Date $Time | Av $Name</b><br>";
echo "$Message<br>";
echo "<span class=\"answer\"><b>Svar av <a href=\"spec.php?ViewMember=ID=$ThisMemberID\" title=\" Visa info om $Firstname $Lastname \">$Firstname $Lastname</a></b> $Answer</span><br><br>";
}
else
{
echo "<b>$Date $Time | Av $Name</b><br>";
echo "$Message<br><br>";
}
}
}
// Stäng databasen
mysql_close($open);
?>
