PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : jeder zweite beidrag hatt eine ander farbe



localhost
24-04-2003, 07:15
hier im board hatt jemand zweite beidrag eine ander farbe ich hab da schon die verschidesten sachn ausprobirt aber ich weis nicht wie das geht

micha
24-04-2003, 09:21
Hi,

meinst Du sowas in der Art ?



<html>
<body>
<table style="BACKGROUND-COLOR:#626194" width="100%" cellpadding="4" cellspacing="4">
<tr><td>
<table width="100%">

<?php
$count = 20; /*Anzahl der Beitraege*/

for ($i=0; $i < $count; $i++)
{
printf ('<tr style="BACKGROUND-COLOR:%s" valign="center"><td align="center">',
($i % 2) ? "#FFFFFF" : "#E6E6F6");
printf ('<p>%s. Beitrag</p></td></tr>', $i+1);
}
?>
</table>
</td></tr>
</table>
</body>
</html>


Gruß micha

Gaert
24-04-2003, 09:39
Hallo!

Schön geschrieben micha, aber man merkt, dass PHP nicht gerade deine Standard Skriptsprache ist ;) .

Ich hoffe du verzeihst mir, aber localhost ist schnell verwirrt, deshalb schreib ich das ganze nochmal in "PHP Style" (in einer etwas einfacheren Version).



<html>
<body>
<table style="BACKGROUND-COLOR:#626194" width="100%" cellpadding="4" cellspacing="4">
<tr><td>
<table width="100%">

<?php
$count = 20; /*Anzahl der Beitraege*/

for ($i=0; $i < $count; $i++) {
if ($i % 2)
$color="#FFFFFF";
else
$color="#E6E6E6";

echo "<tr style=\"BACKGROUND-COLOR: $color \" valign=\"center\"><td align=\"center\">\n";
echo "<p> Beitrag</p></td></tr>\n";
}
?>
</table>
</td></tr>
</table>
</body>
</html>

micha
24-04-2003, 10:30
Hi Gaert,

Du hast recht, meine Standard(Skript)-Sprache ist PHP nicht, muss es aber voraussichtlich in naher Zukunft werden.
Deshalb würde es mich doch interessieren, woran Du das bemerkt hast ? ;)

Gruß micha

Martin Ament
24-04-2003, 16:46
Ich denke mal Printf kommt einem aus anderen Sprachen bekannt vor.

jwebworks
24-04-2003, 16:51
Hehe, ich denke mal

die Kombination von
printf
und
($i % 2) ? ... : ...

waren die Auslöser.

:D

magpie
24-04-2003, 17:54
Ich haben den Ausdruck

($i % 2) ? "#FFFFFF" : "#E6E6F6";
auch einmal irgendwo gesehen und benutze ihn seither. Was ich aber nicht weiss, ist wie er funktioniert :confused:
Könnte mir das bitte mal jemand erklähren :)

magpie

sais
24-04-2003, 18:09
hi!!

ich glaub ich weiß wie das funzt.:

wenn die bedingung vor dem fragezeichen wahr ist, so wird der wert oder die anweisung nach dem fragezeichen genommen..

falls die bedingung vor dem fragezeichen falsch ist, so wird der wert nach dem doppelpunkt verwendet

mfg
sais

jwebworks
24-04-2003, 19:17
Genau.

Kommt von C (IMHO). Ist die Abkürzung für nen
einfachen if-then-else Ausdruck.

magpie
24-04-2003, 19:22
Sowas in der Art hab ich mir gedacht.
Danke für die Info :)

magpie

Gaert
24-04-2003, 19:26
Hallo!

Melde mich auch nochmal zu Wort ;)

Es war eigentlich wirklich die eigentlich wirklich die etwas Eigenwillige von printf.
Bei PHP ist es nicht nötig printf zu benutzen um Werte von Variablen direkt im Text unterzubringen, da Variablen inner halb von doppelten Anführungszeichen immer interpretiert werden.
Desweiteren geben PHP'ler ausgaben meistens mit echo aus... print() oder printf() wird eher selten verwendet. Die ? : Syntax ist in PHP durchaus üblich und wird verwendet (schließlich ist PHP ja stark an C angelehnt), aber da PHP ja als "einfache" Skriptsprache bekannt ist, mit der sich auch viele Anfänger beschäftigen wird meist auf if else zurückgegriffen.
Ich persönlich finde if else intuitiver als ? : und if elseif else übersichtlicher als case().

... Geschmackssache ...

micha
24-04-2003, 19:59
Original geschrieben von Gaert
Es war eigentlich wirklich die eigentlich wirklich die etwas Eigenwillige von printf.


Aha, das wär' mir nicht aufgefallen. Als ich angefangen habe, mich mit PHP zu beschäftigen, war ich gleich begeistert von der an C/C++ doch sehr nahe kommenden Syntax. Dass dann Gewohnheiten aus der alten Sprache in die neue mit einfließen kann schon mal passieren ;)



Bei PHP ist es nicht nötig printf zu benutzen um Werte von Variablen direkt im Text unterzubringen, da Variablen inner halb von doppelten Anführungszeichen immer interpretiert werden.


Das ist mir bekannt, allerdings hatte ich den Schritt über die Variable ausgelassen. Dazu kommt, dass wenn man am Anfang doppelte Anführungsstriche benutzt, man die restlichen Anführungszeichen alle escapen muss, was zusätzliche Schreibarbeit bedeutet ;)

Gruß micha

Gaert
24-04-2003, 20:27
Aha, das wär' mir nicht aufgefallen. Als ich angefangen habe, mich mit PHP zu beschäftigen, war ich gleich begeistert von der an C/C++ doch sehr nahe kommenden Syntax. Dass dann Gewohnheiten aus der alten Sprache in die neue mit einfließen kann schon mal passieren
Man sieht die Anwendung in der Form halt nicht oft (gerade bei so einem kleinen Beispiel)... jeder hat so seine Eigenarten.
Wenn ich größere Projekte schreibe, dann sieht das bei mir oft auch wieder ganz anders aus.

Das ist mir bekannt, allerdings hatte ich den Schritt über die Variable ausgelassen. Dazu kommt, dass wenn man am Anfang doppelte Anführungsstriche benutzt, man die restlichen Anführungszeichen alle escapen muss, was zusätzliche Schreibarbeit bedeutet
Ich verwende bei größeren Sachen eh nur noch Smarty ;) - da muss man sich mit keinen HTML Escapereien mehr rumschlagen.

jwebworks
24-04-2003, 20:55
Jetzt muss ich auch noch was sagen :-)

Ich persönlich finde eine übersichtlich getippte

switch-case Anweisung wesentlich übersichtlicher und
einfacher als viele if-elseif-else Befehle. Kommt aber
auch auf die Art und Weise an, in der man seinen
Quelltext tippt.

Smarty ist natürlich klasse. (Benutze ich auch)

cu, stop.h