mboost-dp1

Php: er dette den sidste row?


Gå til bund
Gravatar #1 - Lakrids
22. sep. 2008 12:29
I et system looper jeg alle kommentarer til en nyhed. Imellem hver kommentar skal der være en <hr>, men IKKE VED DEN SIDSTE! Hvordan checker jeg nemt, om en kommentar er den sidste?

Min kode er (ca)

$query = "SELECT * from kommentar nyhedsid = '$id'";
$result = mysql_query($query) or die(mysql_error());
while ($row = mysql_fetch_array($result))
{
echo $row['kommentar'];
echo '<hr>';
}

Det skal jo gerne være noget alá:

$query = "SELECT * from kommentar nyhedsid = '$id'";
$result = mysql_query($query) or die(mysql_error());
while ($row = mysql_fetch_array($result))
{
echo $row['kommentar'];
if ($lastRow)
echo '<hr>';
}
Gravatar #2 - myplacedk
22. sep. 2008 12:32
Generelt er det nemmere at se om det er den første række.

Dvs. i stedet for en streg under alle, i stedet for den sidste, kan du blot sætte en streg OVER alle, undtagen den første.
Gravatar #3 - trylleklovn
22. sep. 2008 12:32
Du kunne returnere antallet af rækker fra tabellen, og så tælle antallet af rækker du echo'er, og så bare lade være med at echo'e <hr>'en når du når sidste række.
Gravatar #4 - plazm
22. sep. 2008 13:43
Glem det :) så bare på din kode, og troede du ville echo'e på sidste linie.
Gravatar #5 - Lakrids
22. sep. 2008 14:37
Fordi så kommer den jo ikke mellem hver kommentar. Jeg har brugt myplacedk's løsning :) Tak for svarene.

while ($row = mysql_fetch_array($result))
{
if ($countComments != 0){ echo '<hr />'; }
echo $row['kommentar'];
$countComments++;
}
Gravatar #6 - Spiderboy
27. sep. 2008 18:05
Hvis din tabel ikke rummer alt for mange rækker, kan du også bare samle det i en array og så implode den, altså noget a la:

while ($row = mysql_fetch_array($result))
{
$data[] = $row['kommentar'];
}
echo implode('<hr>', $data);


(koden er ikke afprøvet)
Gå til top

Opret dig som bruger i dag

Det er gratis, og du binder dig ikke til noget.

Når du er oprettet som bruger, får du adgang til en lang række af sidens andre muligheder, såsom at udforme siden efter eget ønske og deltage i diskussionerne.

Opret Bruger Login