Supportnet / Forum / Skripte(PHP,ASP,Perl...)
Tabellenzeilen abwechselnd färben und Seitenzahlen
Frage
Hallo
ich habe mir ein kleines Adressbuch, basierend auf einer Mysql datenbank geschrieben.
ich bekomme die daten jetzt in einer tabelle angezeigt.
nun wollte ich fragen, wie man es machen kann, dass die zeilen (jede zeile, ein name) im wechsel 2 unterschiedliche farben haben.
also grau und weiß oder so.
2. frage:
ich bekomme jetzt über 250 adressen hingeknallt, jedoch ist das nicht so ideal, was ladezeiten etc. angeht.
nun wollte ich mal wissen, wie man unten seitenzahlen einfügen kann, sodass das alles auf mehrere seiten verteilt ist.
danke wenn mir jemand hilft
luke
Antwort 1 von disco
moin
für die unterschiedlichen einfärbungen musst du nur die jeweilige Zeile <tr> einer Tabelle anders gestallten. am besten mit css und über eine modulu-funktion (%), in dem du bspw. jede ungerade reihe grau machst.
2.
wenn du nur eine gewisse anzahl rausholen willst, solltest du das über die sql abfrage machen. in den liks der pfeile für vor und zurück hinterlegst du dann die nötigen positionsangaben als parameter.
oder du packst alle einträge in ein array und das in die session und navigierst dann dadurch.
g,
disco
für die unterschiedlichen einfärbungen musst du nur die jeweilige Zeile <tr> einer Tabelle anders gestallten. am besten mit css und über eine modulu-funktion (%), in dem du bspw. jede ungerade reihe grau machst.
2.
wenn du nur eine gewisse anzahl rausholen willst, solltest du das über die sql abfrage machen. in den liks der pfeile für vor und zurück hinterlegst du dann die nötigen positionsangaben als parameter.
oder du packst alle einträge in ein array und das in die session und navigierst dann dadurch.
g,
disco
Antwort 2 von luke
hi
danke für die infos!
kannst du mir das mit der modulo funktion genauer (z.b. an einem code beispiel) erläutern?
zu 2: klaro kann man bei Mysql z.b. mit der funktion limit arbeiten, aber wie kann ich die pfeile oder seitenzahlen dynamisch generieren lassen`?
danke
luke
danke für die infos!
kannst du mir das mit der modulo funktion genauer (z.b. an einem code beispiel) erläutern?
zu 2: klaro kann man bei Mysql z.b. mit der funktion limit arbeiten, aber wie kann ich die pfeile oder seitenzahlen dynamisch generieren lassen`?
danke
luke
Antwort 3 von disco
ein beispiel für die tabelle:
hoffe mal, hab alees relevante kopiert:
<table>
<?php
for($i=1;$i<=7;$i++)
{
?>
<tr>
<td style="vertical-align:top;width:48%" <?php if(($i%2)==0) print(´bgcolor="#EFEFEF"´) ?>> ein Text </td>
</tr>
<?php } ?>
</table>
zu 2.
weiss jetzt nich, ob wir aneinander vorbei reden.
aber du musst ja nur den link des pfeils (oder was auch immer) dynamisch durch php generieren
bsp:
<a href="www.bla.de?pos=<?php print($pos)?>">Weiter</a>
oder du machst ne form und gibst hidden values mit.
hoffe mal, hab alees relevante kopiert:
<table>
<?php
for($i=1;$i<=7;$i++)
{
?>
<tr>
<td style="vertical-align:top;width:48%" <?php if(($i%2)==0) print(´bgcolor="#EFEFEF"´) ?>> ein Text </td>
</tr>
<?php } ?>
</table>
zu 2.
weiss jetzt nich, ob wir aneinander vorbei reden.
aber du musst ja nur den link des pfeils (oder was auch immer) dynamisch durch php generieren
bsp:
<a href="www.bla.de?pos=<?php print($pos)?>">Weiter</a>
oder du machst ne form und gibst hidden values mit.
Antwort 4 von rabies
Tag,
Ich mag auch noch meinen Senf dazugeben.
Kleines Beispiel zum Thema wechsel der Farbe je nach Zeile:
und zu dem SQL-Gedöhns:
und unterhalb der Tabelle würde ich dann einfach einen LInk zu "nächste Seite" setzen, welcher sich wie folgt aufbaut:
<a href="bla.php?pointer=<?php echo ($pointer+$perPage); ?>">nächste Seite</a>
hth,
--Sven.
Ich mag auch noch meinen Senf dazugeben.
Kleines Beispiel zum Thema wechsel der Farbe je nach Zeile:
<table>
<?php
$color1 = "#DDDDDD";
$color2 = "#FFFFFF";
$count = 0;
$Data = array (
0 => array ( ´Name´ => "Blubb", ´Vorname´ => "Bla", ´PLZ´ => "04378", ´Ort´ => "Wald", ´Strasze´ => "Waldweg" ),
1 => array ( ´Name´ => "Muh", ´Vorname´ => "Maeh", ´PLZ´ => "12345", ´Ort´ => "Berg", ´Strasze´ => "Bergpfad" ),
2 => array ( ´Name´ => "No", ´Vorname´ => "Name", ´PLZ´ => "54321", ´Ort´ => "Meer", ´Strasze´ => "Meerstrasze" ),
);
for($i = 0; $i < count($Data); $i++) {
$col = ($count % 2) ? $color1 : $color2;
echo "\t<tr style=\"background-color: ".$col.";\">\n";
foreach($Data[$i] as $value) {
echo "\t\t<td>".$value."</td>\n";
}
$count++;
echo "\t</tr>\n";
}
?>
</table>und zu dem SQL-Gedöhns:
<?php
$perPage = 30;
if(!isset($_GET["pointer"])) $pointer = 0;
else $pointer = $_GET[´pointer´];
$sql = "SELECT * FROM ".$tabelle." LIMIT ".$pointer.", ".$perPage;
// restliches SQL-Gedöhns.
?>und unterhalb der Tabelle würde ich dann einfach einen LInk zu "nächste Seite" setzen, welcher sich wie folgt aufbaut:
<a href="bla.php?pointer=<?php echo ($pointer+$perPage); ?>">nächste Seite</a>
hth,
--Sven.
Antwort 5 von luke
hi
vielen dank an euch
ihr habt mir sehr geholfen!
luke
vielen dank an euch
ihr habt mir sehr geholfen!
luke

