zwei td's nebeneinander
fabian
- php
0 Thorsten F.0 fabian
0 dedlfix2 Vinzenz Mai0 fabian
Hallo Leute!
hab ne frage, sicha werden einige von euch ein derartiges skript schon einmal geschrieben oder verwendet haben.
also:
ich bekomme mein kategorien aus einer mysql-datenbank, lese alle kategorien ein und möchte diese jetzt in einer tabelle schön geordnet ausgeben. das ist nicht das problem, aber ich möchte 2 tds füllen, also zwei spalten und beliebig vielen reihen mit jeweils einem datensatz darin. wo ich dabei eure hilfe brauche ist die zwei spalten zu realisieren. keine ahnung wie ich das machen soll.
bitte um hilfe
freundliche grüße
Hi,
ich nehme mal an, du bekommst deine Results aus der DB mit einer while()-Schleife oder?
Also:
while(dein SQL_Statement)
{
echo "<tr>";
echo "<td>".$data1[spalte1]."</td>";
echo "<td>".$data1[spalte2]."</td>";
echo "</tr>";
}
Meintest du sowas oder habe ich dich jetzt ganz falsch verstanden?
Grüße,
Thorsten F.
danke für deine rasche antwort!
ich nehme mal an, du bekommst deine Results aus der DB mit einer while()-Schleife oder?
ja oder einer for, ist in demfall egal
while(dein SQL_Statement)
{
echo "<tr>";
echo "<td>".$data1[spalte1]."</td>";
echo "<td>".$data1[spalte2]."</td>";
echo "</tr>";
}Meintest du sowas oder habe ich dich jetzt ganz falsch verstanden?
der ansatz wäre gut, wenn ich nur zwei felder der db nebeneinander darstellen wollen würde, mein ziel ist es aber 2 DATENSÄTZE nebeinandner darzustellen.
also so in etwa:
$getdata=mysql_query(ABFRAGE);
$rows=mysql_num_rows($getdata);
print "<table>";
foreach ($i=1;$i<=$rows;$i++) {
$erg=mysql_fetch_row($getdata);
print "<tr><td>$erg[0]</td>";
}
print "</tr></table>";
oda so... :P
echo $begrüßung;
ich bekomme mein kategorien aus einer mysql-datenbank, lese alle kategorien ein und möchte diese jetzt in einer tabelle schön geordnet ausgeben. das ist nicht das problem, aber ich möchte 2 tds füllen, also zwei spalten und beliebig vielen reihen mit jeweils einem datensatz darin. wo ich dabei eure hilfe brauche ist die zwei spalten zu realisieren. keine ahnung wie ich das machen soll.
Möchtest du die Darstellung so
1 2
3 4
5
oder so
1 4
2 5
3
haben?
Nummer 1 ist recht einfach, nach jedem zweiten Datensatz die aktuelle Zeile beenden und eine neue öffnen.
Bei Nummer 2 wären zunächst die Datensätze zwischenzuspeichern, die Anzahl durch 2 zu teilen (ungerade Kategorienanzahl beachten!) und nun jeweils Datensatz 1 & Datensatz {Hälfte+1}, Datensatz 2 & Datensatz {Hälfte+2}, usw. ausgeben.
echo "$verabschiedung $name";
Hallo Fabian,
[...] möchte diese jetzt in einer tabelle schön geordnet ausgeben. das ist nicht das problem, aber ich möchte 2 tds füllen, also zwei spalten und beliebig vielen reihen mit jeweils einem datensatz darin.
Das geht ungefähr so (für beliebig viele Spalten, somit auch für zwei):
Initialisiere einen Zähler
Beginne Deine Tabelle
Solange Du noch Werte zu schreiben hast
Wenn eine neue Zeile erforderlich ist (benutze den Zähler)
Beginne eine neue Zeile
Ende Wenn
Beginne eine Tabellenzelle
Schreibe den Wert als Inhalt der Tabellenzelle
Schließe die Tabellenzelle ab
Wenn eine Zeile beendet werden muss (benutze den Zähler)
Schließe die Zeile ab
Ende Wenn
Erhöhe den Zähler
Ende Solange
Wenn die letzte Zeile noch aufgefüllt werden muss (benutze den Zähler)
Fülle die Zeile mit leeren Tabellenzellen auf
Schließe die Zeile ab
Ende Wenn
Schließe Deine Tabelle ab
Für Deine Überprüfungen ist der Modulo-Operator gut geeignet.
Freundliche Grüße
Vinzenz
Leute, VIELEN HERZLICHEN DANK!
so rasche und hilfreiche antwort hatte ich nicht erwartet :)
@vinzenz: danke für deine hilfe für einen logischen lösungsansatz, diese art der hilfestellung ist sehr konstruktiv! danke vielmals
@dedlfix: auch dir danke, die darstellung ist in demfall egal, du hast natürlich recht, da hätte ich auch draufkommen können, nach jedem zweiten datensatz eine neue zeile zu erstellen ist natürlich die einfachste und schnellste methode! danke vielmals
lasst mich wissen wenn ich euch vielleicht auch mal helfen kann :)
freundliche grüße