Avatar billede n-emy Nybegynder
20. oktober 2005 - 01:24 Der er 8 kommentarer og
1 løsning

Kun en gengivelse?

Hey,

Jeg har følgende script der viser nyheder:

$s_nyhed = mysql_query("SELECT * FROM nyheder ORDER BY id DESC LIMIT 20");
WHILE($nyhed = mysql_fetch_array($s_nyhed)) {
print"
<b>$nyhed[overskrift]</b><br>
$nyhed[forord]<br>
<a href=\"index2.php?merid=$nyhed[id]\">Læs mere.</a><br><br>";
}

Så nu skriver den f.eks.
20 Oktober
Hej med jer

20 Oktober
Hjælp mig

19 oktober
hej

19 oktober
hjælp plz

Men jeg vil gerne have den til kun at skrive datoen en gang, f.eks.:

20 Oktober:
hej med jer
Hjælp mig

19 Oktober
hej
hjælp plzz

nogen der ved hvordan man gør?
Avatar billede jaw Nybegynder
20. oktober 2005 - 01:27 #1
Prøv noget i stil med:
$dato = "";
$s_nyhed = mysql_query("SELECT * FROM nyheder ORDER BY id DESC LIMIT 20");
WHILE($nyhed = mysql_fetch_array($s_nyhed)) {
if($dato != $nyhed['datofelt']) {
  echo $nyhed['datofelt']."<br />";
}
print"
<b>$nyhed[overskrift]</b><br>
$nyhed[forord]<br>
<a href=\"index2.php?merid=$nyhed[id]\">Læs mere.</a><br><br>";
$dato = $nyhed['datofelt'];
}

Kan du følge hvor jeg vil hen?
Avatar billede n-emy Nybegynder
20. oktober 2005 - 01:28 #2
Den er lige ved at være det^^ mangler bare lige den sidste forklaring, har næsten forstået det.
Kan ikke forstå hvorfor der skal stå
$dato = "";
Avatar billede jaw Nybegynder
20. oktober 2005 - 01:30 #3
Det er bare for at oprette variablen. I princippet er det ikke nødvendigt, men jeg synes det er pænest, så den første:
if($date != ...)
...ikke skal søge på en variabel der ikke findes. En stramt opsat php-server vil give fejl på det :)
Avatar billede n-emy Nybegynder
20. oktober 2005 - 01:42 #4
Okay:)

Men det virker ikke det der den skriver stadig datoen ved hver nyhed:/
Avatar billede jaw Nybegynder
20. oktober 2005 - 01:43 #5
Nå ja, du har jo heller ikke fortalt hvor datoen kommer fra, for det var ikke i den paste du gav. Det må du så lige smide...
Avatar billede n-emy Nybegynder
20. oktober 2005 - 01:45 #6
Ups sorry min fejl:)

$s_nyhed = mysql_query("SELECT * FROM nyheder ORDER BY id DESC LIMIT 20");
WHILE($nyhed = mysql_fetch_array($s_nyhed)) {
print"$nyhed[dato] nyhed[mon]<br>
<b>$nyhed[overskrift]</b><br>
$nyhed[forord]<br>
<a href=\"index2.php?merid=$nyhed[id]\">Læs mere.</a><br><br>";
}


Det er $nyhed[dato] og $nyhed[mon](måned). :)
Avatar billede jaw Nybegynder
20. oktober 2005 - 01:48 #7
Så prøv lige det her:

$s_nyhed = mysql_query("SELECT * FROM nyheder ORDER BY id DESC LIMIT 20");
$dato = "";
WHILE($nyhed = mysql_fetch_array($s_nyhed)) {
if($dato != $nyhed['dato']) {
    print"$nyhed[dato] nyhed[mon]<br>";
}
print"
<b>$nyhed[overskrift]</b><br>
$nyhed[forord]<br>
<a href=\"index2.php?merid=$nyhed[id]\">Læs mere.</a><br><br>";
$dato = $nyhed['dato'];
}

Hvis ikke det virker, så må jeg lige lave en bedre test her selv.
Avatar billede n-emy Nybegynder
20. oktober 2005 - 01:51 #8
Det virker:D tusind tak:)

svar?:)
Avatar billede jaw Nybegynder
20. oktober 2005 - 01:53 #9
Selv tak - og svar :)
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