09. september 2007 - 19:13
Der er
10 kommentarer og 1 løsning
Forskellig farve - skiftevis
Når jeg henter data fra en my sql database, hvordan kan jeg så få php til at skifte farve, hveranden gang. Fx grå, hvid, grå, hvid, grå, hvid osv.
Annonceindlæg fra HP
09. september 2007 - 19:19
#1
Eventuelt kunne du: $i = 0; while ($row = mysql_fetch_array($result)) { if ($i % 2 == 0) { echo "<tr><td bgcolor=\"color1\">"; } else { echo "<tr><td bgcolor=\"color2\">"; } echo $row[0] . "</td></tr>" $i++; } kan ikke helt huske syntaxen for table background colors... men det er noget i den her stil.. og det du så gør er at indføre en tæller, hvor du så med % (modulo) tager resten af divisionen med 2... og så hvis den er 0, så er det hver anden celle.. og den skal farves en farve... og ellers vælges en anden farve..
09. september 2007 - 19:24
#2
while ( ... ) { $c = ($c%2==0) ? "#fff" : "#eee"; ## $c er farven ## echo $c; }
09. september 2007 - 19:25
#3
$c = ($a++%2==0) ? "#fff" : "#eee"; selvfølgelig
09. september 2007 - 19:26
#4
Jeg er ikke så god til PHP. Hvordan laver man sådan en tæller?
09. september 2007 - 19:29
#5
<?php $SQL = "SELECT `hej` FROM `dig` ORDER BY `mig`"; $QUY = mysql_query ( $SQL ) or die ( mysql_erorr()); $b = ''; $b.="<table cellspacing=\"0\" cellpadding=\"0\">"; while ( $row = mysql_fetch_assoc ( $QUY ) ) { $c = ($a++%2==0) ? "#EEE" : "#FFF"; $b.= "<tr> $b.= "<td style=\"background-color:" . $c . ";\">" . $row['hej'] . "</td>"; $b.="</tr>"; } $b.= "</table>"; ## OUTPUT ## echo $b; ?>
09. september 2007 - 23:28
#6
tælleren var allerede indført :-) Jeg ville bare beskrive hvordan koden virkede... Altså at du har $i som din tæller, denne tælles hele tiden op, og så laves en if på den for at se hvad farven ska være..
10. september 2007 - 17:36
#7
Jeg har prøvet at den til at virke: <?php $seek = ($_GET['seek']) ? $_GET['seek'] : 0; $conn = mysql_connect("$server", "$user", "$password"); mysql_select_db("$database"); // Hent først data ud $resultat = mysql_query("SELECT * FROM offers WHERE navn like '$seek'") or die (mysql_error()); $number = mysql_num_rows($resultat); print "<p>$number result(s) for <b>$seek</b> </p>"; while ($row = mysql_fetch_assoc($resultat)) { extract($row); ?> <?php $b = ''; $b.="<table cellspacing=\"0\" cellpadding=\"0\">"; while ( $row = mysql_fetch_assoc ( $resultat ) ) { $c = ($a++%2==0) ? "#EEE" : "#FFF"; $b.= "<tr> $b.= "<td style=\"background-color:" . $c . ";\">" . $row['navn'] . "</td>"; $b.="</tr>"; } $b.= "</table>"; ## OUTPUT ## echo $b; ?> <?php }?> Hvad er der galt?
10. september 2007 - 17:51
#8
du skal lige huske "; ved $b.="<tr> :) <?php $seek = ($_GET['seek']) ? $_GET['seek'] : 0; mysql_connect($server, $user, $password); mysql_select_db($database); $b = ''; $b.="<table cellspacing=\"0\" cellpadding=\"0\">"; $resultat = mysql_query("SELECT `navn` FROM `offers` WHERE `navn` LIKE '" . $seek . "'") or die (mysql_error()); print "<p><strong>" . mysql_num_rows($resultat) . "</strong> result(s) "; print "for <strong>" . $seek . "</strong> </p>"; while ( $row = mysql_fetch_assoc( $resultat ) ) { $c = ($a++%2==0) ? "#EEE" : "#FFF"; $b.= "<tr>"; $b.= "<td style=\"background-color:" . $c . ";\">" . $row['navn'] . "</td>"; $b.= "</tr>"; } $b.= "</table>"; ## OUTPUT ## echo $b; ?>
10. september 2007 - 17:57
#9
tak.
10. september 2007 - 17:58
#10
ellebaek hvis du også skal have point så skriv.
10. september 2007 - 19:26
#11
nej tak... det er fair nok.. godt du fik det fikset..
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.