abwechselnde tabellenfarbe

Seite 1 von 1 - Forum: Coding Stuff auf overclockers.at

URL: https://www.overclockers.at/coding-stuff/abwechselnde_tabellenfarbe_85815/page_1 - zur Vollversion wechseln!


C4mpt3R? schrieb am 12.07.2003 um 20:26

hallo leute!

ich will eine datenbank aufziehen und die wird in tables eingelesen! :cool:
ich arbeite v.a. mit php und eben sql
jetzt wäre es für den user angenehmer wenn sich die reihen der tabellen farbig abwechseln also z.b mal blau mal weiß oder so ... :rolleyes:

weiß jemand von euch wie man das mit css, php, oder js machen könnte??

1000 dank!!!

C4mpt3R?


HVG schrieb am 12.07.2003 um 21:04

Code:
.back0 {
   background-color: #000;
}
.back1 {
   background-color: #FFF;
}
dann einfach class="back0" bzw class="back1"

hth


atrox schrieb am 12.07.2003 um 21:45

Zitat von HVG
[CODE].back0 {
dann einfach class="back0" bzw class="back1"

<? $linecount=0; ?>

(...)

<tr/td class="back<? echo ($linecount++)%2 ?>">


C4mpt3R? schrieb am 13.07.2003 um 02:07

wie würdest du das hier machen??

main.php:

<html>
<head>
<link rel="stylesheet" type="text/css" href="include/style.css">
</head>
<body bgcolor="#000000" text="#ffffff">
<center>
<br><br><br>
<table width="800px" bgcolor="#33A0CC" cellspacing="1" cellpadding="0">
<tr><td colspan="4"><img src="img/logo.gif" width="100%"></td></tr>
<tr><td class="spacer" colspan="4">blabla</td></tr>
<tr style="text-align:center; font-weight:bold;" class="pad"><td width='20%' class="pad">Format [mm] & Preis [€]</td><td width='55%' class="pad">Sponsor</td><td width='25%' colspan="2" class="pad">Name</td></tr>

<?php require("engine.php"); contentgen(); ?>

<tr><td class="spacer" colspan="4">impressum ...</td></tr>
<tr><td class="menue" colspan="4"><a href="main.php">Inserate</a> Ξ <a href="data/maturazeitung.zip">Download Datasheet</a> Ξ <a href="scm.php">Login</a></td></tr>
</table>
<img src="img/bottom.gif" width="803px">
<br><br>
</center>
</body>
</html>


engine.php:

<?php
function contentgen() {
$linecount=0;
$fp = fopen("data/data.db","r");
while(!feof($fp)) {
$fcnt = fgets($fp,500);
$farr = explode("%",$fcnt);
echo("<tr class='back($linecount++)%2'><td width='20%' class='pad'>".$farr[0]."</td><td width='55%' class='pad'>".$farr[1]."</td><td width='100px' class='pad'>".$farr[2]."</td></tr>");
}
fclose($fp);
}

?>


style.css:

body{background-color:#666666;
scrollbar-base-color:#666666;
scrollbar-3dlight-color:#666666;
scrollbar-arrow-color:#666666;
scrollbar-darkshadow-color:#666666;
scrollbar-face-color:#33A0CC;
scrollbar-highlight-color:#666666;
scrollbar-shadow-color:#666666;
scrollbar-track-color:#666666; }
td { background-color:#ffffff; font-family:verdana; font-size:7pt; color:#000000; }
a:link { text-decoration:none; color:#800000; }
.spacer { text-align:right; background:#33A0CC; }
.menue { text-align:left; background:#33A0CC; border-top:1px solid; border-color:#000000; }
.pad { padding:1px; }
A:link { COLOR: #000000; TEXT-DECORATION: none }
A:visited { COLOR: #000000; TEXT-DECORATION: none }
A:active { COLOR: #000000; TEXT-DECORATION: none }
A:hover { COLOR: #ffffff ; TEXT-DECORATION: none }
.forminput {FONT-WEIGHT: normal; FONT-SIZE: 8pt; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; BACKGROUND-COLOR: #ffffff; TEXT-DECORATION: none; border: 1px solid #33A0CC; }
.textarea { scrollbar-base-color:#ffffff; scrollbar-3dlight-color:#ffffff; scrollbar-arrow-color:#ffffff; scrollbar-darkshadow-color:#ffffff; scrollbar-face-color:#33A0CC;
scrollbar-highlight-color:#ffffff; scrollbar-shadow-color:#ffffff; scrollbar-track-color:#ffffff; FONT-WEIGHT: normal; FONT-SIZE: 8pt; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; BACKGROUND-COLOR: #ffffff; TEXT-DECORATION: none; border: 1px solid #33A0CC; padding:3px}
.back0 { background-color: #000000; }
.back1 { background-color: #FFFFFF; }


@HVG:
thx aber nützt mir leider nichts ...

@atrox:
hab das von dir probiert ... ansich gute idee ... funktionierte nur leider nicht ... :( :confused: :( :confused:
wär cool wenn du den denkfehler finden würdest :fresserettich:

mfg C4mpt3R?


watchout schrieb am 13.07.2003 um 03:18

mach statt atrox' echo folgendes:

echo (linecount++%2)?1:0;

dass das ganze in ne schleife ghört sollte klar sein, falls dir der command nicht klar is
-> http://www.php.net/manual/de/langua....arithmetic.php (siehe modulus)
-> http://www.php.net/manual/de/langua....comparison.php (siehe trinitäts-operator)

EDIT:
Oh...ok, ich seh grad du hast das _komplett_ falsch verstanden...

Code: PHP
<?php
function contentgen()
{
	$linecount=0;
	$fp = fopen("data/data.db","r");
	while(!feof($fp))
	{
		$fcnt = fgets($fp,500);
		$farr = explode("%",$fcnt);
		echo("
<tr [b]class='back".(($linecount++%2)?1:0)."'[/b]>
	<td width='20%' class='pad'>".$farr[0]."</td>
	<td width='55%' class='pad'>".$farr[1]."</td>
	<td width='100px' class='pad'>".$farr[2]."</td>
</tr>"); // Echo ende!
	}
	fclose($fp);
}
?>
hth ;)


atrox schrieb am 13.07.2003 um 04:15

Zitat von atrox
<tr/td class="back<? echo ($linecount++)%2 ?>">

echo '<TR class="back'.(($linecount++)%2).'">';

der fehler oben war einfach, daß man zwar in "strings" variablen einsetzen kann, aber keine operatoren. das konstrukt ($x%2?1:0) liefert ja genau das selbe wie ($x%2).


watchout schrieb am 13.07.2003 um 04:35

Zitat von atrox
echo '<TR class="back'.(($linecount++)%2).'">';

der fehler oben war einfach, daß man zwar in "strings" variablen einsetzen kann, aber keine operatoren. das konstrukt ($x%2?1:0) liefert ja genau das selbe wie ($x%2).
also x%2 ergibt imho, wenn
x=3 : 0.5, wenn
x=4 : 0, wenn
x=5 : 0.5, wenn...

ok, mit round könnte man das beheben - is wohl wieder ne geschmackssache...


EDIT: DARN, ich kann netamal mehr rechnen... Fatal-Error in Module Brain01 -> atrox's right :rolleyes:


Neuronized schrieb am 13.07.2003 um 22:23

Ich würds so machen:

$flip = !$flip;
echo '<tr class="back' . ($flip?1:0) . '">';

Damit erspart man sich den Modulo-Operator.


watchout schrieb am 13.07.2003 um 23:46

Zitat von Neuronized
Ich würds so machen:

$flip = !$flip;
echo '<tr class="back' . ($flip?1:0) . '">';

Damit erspart man sich den Modulo-Operator.
no besser wär aber dann:
Code: PHP
$flp = 1;

$flp = $flp*-1;
echo '<tr class="back' . (1+$flp) . '">';
damit hast ne abfrage weniger... hmm, wär die frage was mehr rechenzeit kostet trinitätsop, oder multiplikation... :rolleyes:

die atrox-variante is auf jeden fall besser wenn du eh schon eine fortlaufende variable hast, dann hast nämlich genau einen befehl...

aber sowas is wahrscheinlich eh wurscht, wennst die schleife net grad 10000mal durchläufst...


C4mpt3R? schrieb am 16.07.2003 um 00:20

thx @ all
habs zwar noch nicht ausprobiert schaut aba gut aus *hehe*
merci

lg C4mpt3R?




overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2026