webForumDet fria alternativet

Hur skall jag göra med mina resultat av mysql-queries

PHP

7 svar · 757 visningar · startad av supercajo

Medlem sedan jan. 2005114 inlägg
Frågan#1

Hej!

Jag håller på med en nyhetsfunktion i php och funderar på hur jag skall lösa följande grafiska delemma.

Jag hade tänkt publicera nyheter på förstasidan och sen i en kolumn på vänster sidan. (Så långt inga problem).
Men hur gör jag för att varannan nyhet ska ha en färg och de övriga ha vit bakgrund? Säg då att jag vill visa 6 nyhetsrubriker med varannan färg.

Nästa fråga rör förstasidan och ett annat kosmetiskt dilemma...

Vidare undrar jag hur jag hämtar en specifik post i databasen i ett sammanhang som tillhör en nyhetsfunktion.
Typ att man alltid vill ha den näst sista posten i databasen eller de tre posterna efter den sista posten (som är den nyaste).

Det jag vill åt är att publicera den senaste nyheten helt på förstasidan och de övriga tre/fyra/fem nyheternas rubriker skall synas under och inte innehålla någon artikeltext som sista och senaste artikeln ska göra...

hänger ni med?

Tack så länge!

Medlem sedan juni 20006 031 inlägg
#2

Skapa två olika stilar för raderna i din css, döp dom till odd och even (eller något annat)

while ($res = mysql_fetch_array($dinvar)) {
     $farg = ($i++&1)?"odd":"even";
     echo "<div class=\"$farg\"> ... ditt innehåll ... </div>";
}

Inuti loopen kan du även kontrollera värdet på $i, om den är över 1 så skriver du bara ut rubriken annars hela artikeln, om jag förstått dig rätt.

Medlem sedan maj 20012 237 inlägg
#3

Eller så kör man med CSS3 selektorer :)

p:nth-child(odd) { color:red; }
p:nth-child(even) { color:green; }

Medlem sedan feb. 20005 891 inlägg
#4

jme skrev:

Eller så kör man med CSS3 selektorer :)

p:nth-child(odd) { color:red; }
p:nth-child(even) { color:green; }

Dåligt stöd för pseudo-element i vissa browsers dock.

Medlem sedan jan. 2005114 inlägg
#5

vad exakt är det den här kodsnutten gör?

  $farg = ($i++&1)?"odd":"even";

$i: sätts dennes värde i $farg eller måste jag deklarera den på något sätt.
Förstår kort och gott inte nämnd kodrad tyvärr.

Medlem sedan juni 20006 031 inlägg
#6

Enkelt förklarat är det en if-sats som ger variabeln $farg värdet odd varannan gång och värdet even varannan gång när loopen körs.

/red
$i får värdet 1 första loopen, värdet 2 andra loopen, osv

Medlem sedan jan. 2005114 inlägg
#7

Tack så otroligt mycket:-) ni är helt underbara. nu har jag att prova mig fram:-)

Medlem sedan jan. 2005114 inlägg
#8

Uppdatering: Pedda: Jag fixade det med hjälp av din lösning. Tack alla andra för era inlägg ändå:D De kommer säkert vara till hands lite senare! Men som sagt, Tack alla underbara, ni är ovärdeliga!

Tack!

263 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
128 ms — deklarationer (db)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)
128 ms — ändringar (db)