Tabelle interaktiv sortieren
Erich
- datenbank
Hallo
Ich würde gerne eine Tabelle für Außenstehende erstellen, die die Leute nach verschiedenen Spalten sortieren können (ohne dass ich jede Tabelle in jeder Sortierung extra gespeichert habe). In welcher Sprache kann man das am einfachsten verwirklichen ? PHP oder was ? Hab da keine Ahnung ...
Hallo!
Ich würde gerne eine Tabelle für Außenstehende erstellen, die die Leute nach verschiedenen Spalten sortieren können (ohne dass ich jede Tabelle in jeder Sortierung extra gespeichert habe). In welcher Sprache kann man das am einfachsten verwirklichen ? PHP oder was ? Hab da keine Ahnung ...
Ähhmmm, ich würde mal sagen SQL. SQL sollte eigentlich eine Datenbank beherschen, mehr oder weniger. Da kannst Du dann mit ORDER BY Tabellen sortieren, nach einer oder mehreren Spalten.
SELECT spalte1, spalte2, spalte3 FROM tabelle ORDER BY spalte2 ASC; ( oder DESC)
Über PHP baust Du nun ein SQL-Statement zusammen, was die Tabelle je nach Userwunsch sortiert.
MfG, André Laugks
hi Andre,
Über PHP baust Du nun ein SQL-Statement zusammen, was die Tabelle je nach Userwunsch sortiert.
Ist es sinnvoll, eine "echte" SQL-Datenbank übers Web auszulesen oder liegt da nicht doch mySQL näher ?
Grüße aus Berlin
Christoph S.
Hallo!
Über PHP baust Du nun ein SQL-Statement zusammen, was die Tabelle je nach Userwunsch sortiert.
Ist es sinnvoll, eine "echte" SQL-Datenbank übers Web auszulesen oder liegt da nicht doch mySQL näher ?
Ich meinte das so:
<a href="seite.php?order=1">Vorname</a>
<a href="seite.php?order=2">Nachname</a>
<a href="seite.php?order=3">Geburtsdatum</a>
// seite.php
if(order=="1") { $spalte="vorname"; }
if(order=="2") { $spalte="nachname"; }
if(order=="3") { $spalte="geboren"; }
$sql = "SELECT spalten FROm tabelle ORDER BY " . $spalte . ";";
So kann sich der User "interaktiv" die Sortierung auswählen.
MfG, André Laugks
Hallo!
Über PHP baust Du nun ein SQL-Statement zusammen, was die Tabelle je nach Userwunsch sortiert.
Ist es sinnvoll, eine "echte" SQL-Datenbank übers Web auszulesen oder liegt da nicht doch mySQL näher ?
Da war ich ein wenig zu schnell. Eine DB ist wohl die beste Lösung. Weil man auch Spalten, wenn sie den richtigen Spaltentyp zugeordnet bekommen haben, viel besser sortieren kann. Als Beispiel fallen mir die Zeitspaltentypen ein. Ich wüßte jetzt nicht auf anhieb, wie ich Geburtsdaten aus einer CSV-Datei am besten sortieren würde, viel zu viel rumgefrickele.
Obwohl ich das bei einem grossen Projekt mal über CSV-Dateien gemacht habe. Es ist wahnsinnig aufwendig und nervig. Obwohl, ich habe mit dem ganzen CSV-Gedöns, Dinge hinzubiegen gelernt und mit Arrays aller Arten zu arbeiten.
MfG, André Laugks
Moin!
Ist es sinnvoll, eine "echte" SQL-Datenbank übers Web auszulesen oder liegt da nicht doch mySQL näher ?
Was ist denn deiner Meinung nach der Unterschied zwischen einer "echten SQL-Datenbank" und "mySQL"? Ist "mySQL" irgendwie "unechter" als andere SQL-Datenbanken? Ich finde "mySQL" verhält sich ziemlich so, wie es eine SQL-Datenbank tun sollte, bzw. umgekehrt verhalten sich andere SQL-Datenbanken ziemlich genau so, wie es auch "mySQL" tut. ;)
- Sven Rautenberg
Hi Sven,
Was ist denn deiner Meinung nach der Unterschied zwischen einer
"echten SQL-Datenbank" und "mySQL"? Ist "mySQL" irgendwie "unechter"
als andere SQL-Datenbanken?
Transaktionen, Subselects, Constraints, ...
Ich finde "mySQL" verhält sich ziemlich so, wie es eine SQL-Datenbank
tun sollte, bzw. umgekehrt verhalten sich andere SQL-Datenbanken
ziemlich genau so, wie es auch "mySQL" tut. ;)
Für den angegebenen Einsatzfall, nämlich mit einem primitiven SELECT mit
ORDER BY-Klausel Tabellenwerte sortiert abzufragen, reicht mySQL in der
Tat aus.
Viele Grüße
Michael
n'Abend,
Was ist denn deiner Meinung nach der Unterschied zwischen einer "echten SQL-Datenbank" und "mySQL"? Ist "mySQL" irgendwie "unechter" als andere SQL-Datenbanken?
Nein. Ich hab ja das "echt" auch sehr bewußt in Anführungszeichen gesetzt - und übrigens bin ich selbst, jedenfalls was Datenbanken angeht, noch ein Azubi im zweiten Lehrjahr. Gemeint war, daß mySQL an manchen Stellen halt "kleiner" ist. Einige wenige spezielle Datenbank-Anforderungen kann es halt nicht.
Ich finde "mySQL" verhält sich ziemlich so, wie es eine SQL-Datenbank tun sollte, bzw. umgekehrt verhalten sich andere SQL-Datenbanken ziemlich genau so, wie es auch "mySQL" tut. ;)
Da sind wir durchaus derselben Ansicht. In fast allen Fällen wird mySQL genügen können, gerade was das Problem im Ausgangsposting angeht - Spalten sortieren ist für mySQL ein Klacks. Für den Programmierer möglicherweise nicht ...
Christoph S.
guten Abend,
Ich würde gerne eine Tabelle für Außenstehende erstellen
ähm ... bist du sicher, daß du "Außenstehende" meinst und nicht "Außerirdische" ?
ok, ernsthaft:
die die Leute nach verschiedenen Spalten sortieren können (ohne dass ich jede Tabelle in jeder Sortierung extra gespeichert habe).
Das ist einfach zu wenig "input", was du damit beschreibst. Was ist hier "sortieren" ? Soll sich ein Besucher deiner Tabellenseite die Spalten, die er sehen möchte, aussuchen können, soll er von links nach rechts, von oben nach unten oder in Kreisen angezeigt bekommen, was in der Tabelle steht ?
Was überhaupt soll sortiert werden ? die TD's oder deren Inhalt ? Soll es eine alphabetische Darstellung geben oder gibts einfach eine Liste mit 1., 2., 3. usw. ?
Für alle diese konzeptionellen Fragen gibt es (teilweise sehr unterschiedliche) Lösungswege.
In welcher Sprache kann man das am einfachsten verwirklichen ? PHP oder was ? Hab da keine Ahnung ...
och, warum denn fremdgehen. HTML kann Tabellen schon ganz gut, wenn mans mit ein klitzekleinem bißchen CSS würzt. PHP kann da eigentlich nicht "mehr", weil es eh auf HTML zurückgreifen würde.
Nimm mir den "Ton" meines postings nicht übel. Stell deine Frage einfach nochmal etwas genauer, dann wirds auch - hoffentlich - eine praktikable Lösung geben.
Christoph S.
Hallo Erich
Ich würde gerne eine Tabelle für Außenstehende erstellen, die die Leute nach verschiedenen Spalten sortieren können (ohne dass ich jede Tabelle in jeder Sortierung extra gespeichert habe). In welcher Sprache kann man das am einfachsten verwirklichen ? PHP oder was ? Hab da keine Ahnung ...
Solange du die Daten nicht dynamisch aus einer vorhandenen Datenbank holst, sondern einfach eine HTML-Tabelle auf Klick in eine Kopfspalte nach dieser Spalte sortieren lassen willst (z.B. bei jedem Klick abwechselnd auf- oder absteigend, wie bei vielen modernen Programmen ueblich, etwa Dateimanagern), ist das eigentlich eine wunderschoene Anwendung fuer DOM-basiertes JavaScript. Sicherlich zu komplex, um sie jetzt hier einfach mal eben so zu entwickeln und zu posten. Aber absolut reizvoll. Eigentlich genau das Richtige fuer einen Feature-Artikel ;-)
viele Gruesse
Stefan Muenz
Hi Stefan
HTML-Tabelle auf Klick in eine Kopfspalte nach dieser Spalte sortieren lassen willst (z.B. bei jedem Klick abwechselnd auf- oder absteigend, wie bei vielen modernen Programmen ueblich, etwa Dateimanagern), ist das eigentlich eine wunderschoene Anwendung fuer DOM-basiertes JavaScript. Sicherlich zu komplex, um sie jetzt hier einfach mal eben so zu entwickeln und zu posten. Aber absolut reizvoll. Eigentlich genau das Richtige fuer einen Feature-Artikel ;-)
Wär ne Lösung ohne DOM auch Featureartikel würdig? :)
viele Gruesse
Rolf