Så fort jag postar en kodsnutt här så fixar det sig. x(
Men det är i och för sig bra. Vad som var fel vet jag inte med nu fungerar allt så vi kan glömma denna tråd. :D
3 svar · 146 visningar · startad av K@llen
Ingenting vill sig en kväll som denna. Samma bok kan ha flera författare. Jag vill skriva ut alla författare tillsammans med en titel, språk och beskrivning.
Tycker nedanstående borde fungera:
$sql ="SELECT b.bookId, ba.authorFirstName, ba.authorLastName, b.title, b.comments, l.language
FROM books b INNER JOIN bookAuthorList bal
ON b.bookId = bal.bookid
INNER JOIN bookAuthor ba
ON bal.authorId = ba.authorId
INNER JOIN language l
ON b.languageId = l.languageId
ORDER BY b.title ";
while ( $data = mysql_fetch_array( $Result ) ) {
$bookId = $data["bookId"];
$authorFirstName = $data["authorFirstName"];
$authorLastName = $data["authorLastName"];
$title = $data["title"];
$comments = $data["comments"];
$language = $data["language"];
if ( trim( $title ) != trim( $lastTitle ) ) {
print "<br>" . $title . "<br>" . $language . "<br>" . $comments . "<br>";
}
print "" . $authorFirstName . " " . $authorLastName . " ";
$lastTitle = $title;
}
Så fort jag postar en kodsnutt här så fixar det sig. x(
Men det är i och för sig bra. Vad som var fel vet jag inte med nu fungerar allt så vi kan glömma denna tråd. :D
Jag råkade ut för ett problem till. Varje utsktift ska hamna i en egen tabellrad. Var den ska skriva ut <tr> var en ganska lätt match. Men var den ska avsluta tabellraden är ju lite mer osäkert eftersom jag inte vet hur många författare varje bok har.
Säkert hur simpelt som helt med logiskt tänkande som jag saknar i nuläget. :e
Har någon en smart idé så här mitt i natten?
while ( $data = mysql_fetch_array( $Result ) ) {
$bookId = $data["bookId"];
$authorFirstName = $data["authorFirstName"];
$authorLastName = $data["authorLastName"];
$title = $data["title"];
$comments = $data["comments"];
$language = $data["language"];
if ( trim( $title ) != trim( $lastTitle ) ) {
[b]print "<tr>";[/b]
print "<td><br>" . $title . "<br>" . $language . "<br>" . $comments . "<br></td>";
}
print "" . $authorFirstName . " " . $authorLastName . " ";
$lastTitle = $title;
}
Det löste sig det också. wF är magiskt för uppfinningsrikendomen. :)
while ( $data = mysql_fetch_array( $Result ) ) {
$bookId = $data["bookId"];
$authorFirstName = $data["authorFirstName"];
$authorLastName = $data["authorLastName"];
$title = $data["title"];
$comments = $data["comments"];
$language = $data["language"];
if ( trim($title) != trim($lastTitle) ) {
if ( $slutTr == 1 ) {
print "</td></tr>\n\n";
}
print "<tr><td>";
print "<br><b>" . $title . "</b><br>" . $language . "<br>" . $comments . "<br>";
$slutTr = 1;
}
print "" . $authorFirstName . " " . $authorLastName . " ";
$lastTitle = $title;
}
print "</td></tr>";
}