Avatar billede katja_kh Nybegynder
18. august 2008 - 15:21 Der er 6 kommentarer og
1 løsning

udskriv kun overskriften én gang

Hej.

Jeg skal have skrevet noget tekst ud fra min database, jeg har foreløbigt denne forespørgsel. Men problemet er at den skriver overskriften ud for hver tekst stykke.
Jeg skal kun have overskriften én gang og der efter de tekster som har id der passer til overskriften.

<?
include("db_con.php");

$r=mysql_query("SELECT malerier_cv_overskrift.overskrift, malerier_cv_text.text FROM malerier_cv_overskrift, malerier_cv_text WHERE malerier_cv_overskrift.id=malerier_cv_text.fk_id ");
        while($row=mysql_fetch_array($r)){
            echo "<div class='overskrift'>"."$row[overskrift]"."</div>";
            echo "<br />";
            echo nl2br($row[text]);
            echo "<br /><br />";     
        }
?>

det må være noget med placeringen af while sætningen, men kan ikke lige finde ud af hvordan jeg skal placerer det.
Avatar billede w13 Novice
18. august 2008 - 15:26 #1
Jeg ville nok gøre det sådan her:

<?
include("db_con.php");

$r=mysql_query("SELECT malerier_cv_overskrift.overskrift, malerier_cv_text.text FROM malerier_cv_overskrift, malerier_cv_text WHERE malerier_cv_overskrift.id=malerier_cv_text.fk_id ");

while($row=mysql_fetch_array($r)){
    if($overskrift!=$row[overskrift]){
        $overskrift=$row[overskrift];
        echo "<div class='overskrift'>".$row[overskrift]."</div>";
    }
    echo "<br />";
    echo nl2br($row[text]);
    echo "<br /><br />";     
}
?>
Avatar billede riversen Nybegynder
18. august 2008 - 16:14 #2
det tyder lidt på en dårlig databasestruktur, hvis du har overskriften stående i hver eneste record i din tabel.
Avatar billede coderdk Praktikant
18. august 2008 - 19:40 #3
riversen, mon ikke det er pga det inner join ;)

ved w13's skal du lige huske at initialisere $overskrivt før while, i.e.

$overskrift = '';
Avatar billede fant0mas Nybegynder
19. august 2008 - 08:24 #4
Bedst var det nok at se på id'et når der sammenlignes.
Avatar billede riversen Nybegynder
19. august 2008 - 17:13 #5
coderdk: indrømmet... mit indlæg var nok ikke helt gennemtænkt.
Avatar billede katja_kh Nybegynder
19. august 2008 - 17:40 #6
tak w13 det virker som det skal...
Avatar billede w13 Novice
19. august 2008 - 21:01 #7
Tak for point! :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester