dynamische Strings einlesen und vertauscht in HTML-Tabelle ausgeben
:(
Hallo Forum, ich hab hier ein Problem an dem ich schon tagelang sitze und nicht weiterkomme. Ich hoffe mir ist noch zu helfen. Problemschilderung: Eine bestimmte Integeranzahl (Primarykeys) soll aus DB eingelesen werden. Aufgelisten möchte ich diese in einer Tabelle die wie folgt aussieht: integer 11 integer 8 integer 5 integer 12 integer 9 integer 6 integer 13 integer 10 integer 7 integer 4 Ich lese die PK's aus DB von hinten nach vorne ein und nur 10 Stück sollen in einer Tabelle angezeigt werden. Die darstellung nicht zeilenweise hintereinander sonder wie oben in Dreierpacks nebeneinander. Aber der letzte INT nicht an erster Stelle eines Dreierpacks in der HTML-TAB sondern die Position mit dem letzten INT des Dreierpacks, in diesem Falle 11, vertauscht. Provisorisch habe ich die Tabellen darstellung mit switch case hingekriegt, aber nicht befriedigend <TABLE> <TR> <TD> <TABLE> <TR> <TD> <?php $db=mysql_connect mysql_select_db $anfrage="SELECT * FROM tabelle"; $ergebnis=mysql_query($anfrage); $anz=mysql_num_rows($ergebnis); for ($a=$anz-1;$a>$anz-10;$a--) mysql_data_seek($ergebnis, $a); $zeile=mysql_fetch_row($ergebnis); print("<a href='readfrm.php?_id="); print($zeile[0]); print("'>"); print($zeile[0]); print(" - "); print($zeile[5]); print("</a>"); print("</TD>"); $b = 0+$a; switch ($b) { case "6": print(" "); print("</TR></TABLE>"); print("<TD><TABLE border=1><TR><TD>"); break; case "3": print(" "); print("</TR></TABLE>"); print("<TD><TABLE border=1><TR><TD>"); break; case "0": print(" "); print("</TR>"); print("</TABLE>"); break; default: print(""); print("</TR>"); print("<TR><TD>"); } er soll ja OBJEKTIV 10 Stück nehmen die da sind und sich nicht nach $a richten. Da er ja im For alles einliest und runterrattert dachte ich mir, dass man das so sicherlich nicht ordnen kann. In Erwägung gezogen habe ich Arrays ...dass er mir die PK's Arrays zuweist, zwischenspeichert, diese dann sortiert und richtig ausgibt nur for ($a=$anz-1;$a>$anz-10;$a--) $zwischen[$i] = $zeile[] $i = $i + 1; geht auch nicht. Hat jemand Anstöße oder Hinweise wie dieses Problem zu bewältigen ist?? DANKE FÜR EUER HILFE! |
AW: dynamische Strings einlesen und vertauscht in HTML-Tabelle ausgeben
Am besten speicherst du die Daten zunächst in einem verschaltelten Array, wobei die Schlüssel, die jeweilige Zeilennummer angeben, in der der Eintrag stehen soll. Welche das ist, kannst du leicht mit dem Modulooperator bestimmen:
PHP-Code:
|
AW: dynamische Strings einlesen und vertauscht in HTML-Tabelle ausgeben
Whoa!
Hallo Xabbuh, Erstmal danke, dass du dir Zeit genommen hast ein Script für mich zu schreiben! Es hat mich als Anfänger überfordert... :-Q ich hab es dann in meinen Code implementiert und werte verändert und prints hier und da dazugetan um zu testen was sich tut. foreach und mysql_fetch_assoc(iated) waren mir nicht ganz klar, hab nachgekuckt.. Es bleiben aber trotzdem noch viele Fragen offen. Meine Grundüberlegungen sind: Code:
1. die letzten 12 datensätze aus DB von hinten nach vorne einlesen und in deînem Script gesucht. PHP-Code:
nur wofür ist dann $line und $i gut? PHP-Code:
Meine daten sind aber dynamisch. ich hab folgendes probiert: PHP-Code:
und hier fehlt mir dann auch das chronologische Auslesen der Datensätze von hinten nach vorn und die begrenzte Anzahl.. und was wenn ich nicht nur den Titel sondern auch das Datum mit auslesen will? Muss ich dann eine neue schleife machen mit row datum? nur wie verbinde ich das dann mit den arrays die den titel enthalten? PHP-Code:
Zitat:
und noch sehe ich den Effekt des Modulooperators in der Rechnung nicht.. Auch dass da plötzlich ein $k aufgetaucht ist hat mich irritiert. Ach herrje :-( Grüße Christoph Code:
$dsatz[1] INT 15 <------ verwendet. INT ist bloß zu Testzwecken. Es soll ja die letzten 12 Überschriften(THEMEN in einem Forum anzeigen) nur ein grafischer Umstand verlangt, dass in einem Dreierblock letzte und erste Überschrift vertauscht werden müssen. Diese Vertauschung oder Sortierung bei Arrays...gibt es da einen spez. Befehl? |
Alle Zeitangaben in WEZ +2. Es ist jetzt 14:51:23 Uhr. |
Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.