Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
Tabellenfarbe abwechseln [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
Tabellenfarbe abwechseln


 
Citral666
26-02-2004, 09:50 
 
Hi!

Ich weiss, das ist ein leidiges Thema und wurde schon zig-mal behandelt - ABER ICH CHECK´S EINFACH NICHT !!! Vielleicht erbarmt sich ja jemand und hilft mir hier weiter...

Also: Hab eine Datenbank mit Terminen und möchte, daß diese Termine mit abwechsender Table-Color ausgeworfen werden. Nicht nach ID (da einzelne Datensätze rausfallen), sondern dynamisch.

Hier mal mein bisheriger Code (hab alle Versuche in Sachen dynamischer bg-color mal rausgenommen):


include("admin/dbconnect.php");
$selectt = "SELECT ID, DATE_FORMAT(datumv,'%d.%m.%Y') as datumv1, DATE_FORMAT(datumb,'%d.%m.%Y') as datumb1, zeit, ort, info, AID, extern";
$fromt = " FROM events";
$wheret = " WHERE ID>0 AND datumv>=now() AND CID=1";
$orderbyt= " ORDER BY datumv";
$searcht1 = mysql_query($selectt . $fromt . $wheret . $orderbyt);
if (!$searcht1) {
$error="Die Verbindung zur Datenbank kann derzeit nicht hergestellt werden.";
include("message.php");
include("footer.php");
exit(); }

$result=mysql_query("SELECT COUNT(*) AS events FROM events WHERE ID>0 AND datumv>=now()");
$row=mysql_fetch_array($result);
$events=$row["events"];
if($events>0) {


$searchtarray = array();
while ($searcht = mysql_fetch_array ($searcht1)) $searchtarray[] = $searcht;
foreach($searchtarray as $searcht)
{

$datumv = ($searcht["datumv1"]);
$datumb = ($searcht["datumb1"]);
$zeit = ($searcht["zeit"]);
$ort = ($searcht["ort"]);
$info = ($searcht["info"]);
$aid= ($searcht["AID"]);
$extern= ($searcht["extern"]);
//... da folgen noch einige Abfragen - hab ich mal rausgenommen

echo("<table width='100%' cellspacing='0' cellpadding='1'><br>"); //das ist der table, der die bgcolor dynamisch ändern soll
echo("<tr>");
if ($name=="* externer Künstler"):
echo("<td class='eaact'>$extern</td>") ;
else:
echo("<td class='eaact'>$name</td>");
endif;
echo("</tr>");
echo("<tr>");
if($datumb=="00.00.0000") {
echo("<td class='eadate'>$datumv</td>");
}else{
echo("<td class='eadate'>$datumv bis $datumb</td>");}
echo("</tr>");
echo("<tr>");
echo("<td class='eaort'>$ort</td>");
echo("</tr>\n");
echo("</table>");
}
} else {
echo("<table width='96%' cellspacing='0' cellpadding='3' class='content'><br>");
echo("<tr>\n");
echo("<td class='coheader'>derzeit keine Termine</td>");
echo("</tr>\n");
echo("</table>");}



Das Prinzip mit Restwert usw. ist mir generell klar - nur schaff ich´s nicht mal, die Datensätze dynamisch zu numerieren...
Hoffe, mir kann da jemand helfen - ich verzweifle.

Danke. LG, Citral

 
kill_bill
26-02-2004, 10:04 
 
ganz einfach:

zum ausgeben baust du eine while - schleife
dann folgendes:
if ($i++ % 2)
$bgcolor="#000000";
else
$bgcolor="#ffffff";
möchtest du keine while-schleife, mußt du den block entsprechend öfter einbauen.

 
Citral666
26-02-2004, 10:14 
 
WOW - das ist alles ?!?!?!

Ich dachte immer, ich muß $i auch irgendwie in meiner Abfrage definieren...

Danke - du hast mir wirklich sehr geholfen!

LG, Citral

 
Coragon Rivito
26-02-2004, 12:21 
 
Original geschrieben von Citral666
Ich dachte immer, ich muß $i auch irgendwie in meiner Abfrage definieren...

was denkst du macht $i++ ? ;)

 
Citral666
26-02-2004, 12:25 
 
Ja, nur ich dachte an den "klassischen" Weg $i=$variable("")...

Hab mich schon ein wenig mit der Funktion gespielt - ist super-vielseitig einsetzbar... Jaja, man lernt nie aus... :rolleyes:

Danke für eure freundliche Unterstützung.

LG, Citral

 
xManUx
26-02-2004, 12:56 
 
kill_bill hat dir ja schon geholfen.. aber du meintest am anfang sicher sowas: ?



<?
$wechsel=1;


{ # ... irgend ein schleifenbeginn mit ner abfrage der datenbank ... #


### Farbe festlegen ###
if ( $wechsel==1 ) { $farbe=$tbgfarbe; }
if ( $wechsel==3 ) { $farbe=$tbgfarbe1; $wechsel = 2; }


echo "<tr bgcolor=$farbe>"; # ( oder in table oder td )

## Farbenwechsel veranlassen ##
if ( $wechsel==1 ) { $wechsel = 3; }
if ( $wechsel==2 ) { $wechsel = 1; }

} # irgend ein schleifenbeginn von db ende..

?>



aber wie du siehsch, isch des von kill_bill einfacher :D

PS: $tbgfarbe1 und $tgbfarbe muss man halt no festlegen...

- -

Alle Zeitangaben in WEZ +2. Es ist jetzt 17:07 Uhr.