1.8k Aufrufe
Gefragt in Webseiten HTML von
Hallo zusammen,

ich brauche mal einen guten Tipp, wie ich folgendes Szenario am sinnvollsten in HTML umsetzen kann:

Ich habe eine Tabelle, in der viele Datensätze angezeigt werden (d.h. ich habe viele viele Tabellenzeilen...). jeder dieser Datensätze hat einen bestimmten Status in der Datenbank, der auch in einer Spalte der Zeile angezeigt wird. Nun möchte ich, dass man in dieser Übersicht bei jedem einzelnen Datensatz den Status ändern kann, d.h. es muss statt dem Status ein Select angezeigt werden. Wenn man aus dieser Liste einen neuen Status auswählt und auf einen Button drückt, soll genau bei diesem Datensatz der Status in der Datenbank geändert werden.

Jetzt die Frage: Was macht am meisten Sinn. Sollte ich für jede Tabellenzeile ein eigenes Form benutzen mit z.B. einem Hidden-Input-Feld, damit ich weiß, um welchen Datensatz es sich handelt? Oder kann man das irgendwie über ein großes Formular machen? Meiner Meinung nach müsste man, wenn man ein großes Formular hat, zumindest eine Checkbox aktivieren, damit man das abfangen kann. oder gibt es eine andere möglichkeit?

Viele Grüße
Daniel

7 Antworten

0 Punkte
Beantwortet von
natürlich nur 1 Formular!

Das Auseinanderpflücken, welche Datensätze verändert sind, ist serverseitig zu regeln.
0 Punkte
Beantwortet von
Das würde doch aber auch bedeuten, dass ich unnötig viele Daten erstmal zum Server schicken müsste...wenn man sich jetzt beispielsweise 1000 Datensätze in der Übersicht anschaut, wird die zu übertragende Menge doch viel zu groß -> d.h. Wartezeiten werden unnötig lang.
0 Punkte
Beantwortet von
es hindert dich ja niemand daran, mittels JavaScript nur die geänderten Daten übertragen zu lassen. Ggf wäre auch AJAX sinnvoll.

Allerdings sind dies jetzt schon sehr spezielle Ansätze, die ich ohne Kenntnis deiner Datenstruktur nicht weiter ausführen möchte.
0 Punkte
Beantwortet von
hm an ajax hatte ich auch schon gedacht...vielleicht könnt ihr mir ja noch ein paar tips geben. ich will hier mal kurz meine datenstruktur wiedergeben:

Es ist im Prinzip erstmal nur eine Tabelle mit folgenden Spalten:
ID | Status | Name | etc..
Dann hab ich eine weitere Tabelle, in der es die unterschiedlichen Status gibt:
ID | Name

auf der Webseite lass ich nun in einem table-Element die Datensätze mit den unterschiedlichen Status anzeigen, wobei in jeder Zeile der Status nicht als text ausgegeben wird, sondern es wird der entsprechende Status aus allen möglichen (in der 2. tabelle vorhandenen) in einem select-element ausgewählt.

Wie kann ich das mit dieser DAtenstruktur am besten realisieren?
0 Punkte
Beantwortet von
siehe Antworten 1 + 3!

vielleicht könnt ihr mir ja noch ein paar tips geben
zu welchem Thema? wo hängts?
0 Punkte
Beantwortet von
ok also der haken an der sache ist:

wie kann mit ajax herausfinden, welche id (in der datenbank) dre grade bearbeitete datensatz hat? ich hab da überhaupt keinen ansatz zu...
0 Punkte
Beantwortet von
das kannst du doch selbst bestimmen! Dein JavaScript (AJAX) liest Seiteninhalte aus - da stehts doch drin - und dein serverseitiges Skript, das den AJAX-Request bearbeitet, bekommt natürlich im Request diese Infos und kann dann die entsprechenden Daten in der DB auslesen, manipulieren, zurückgeben, speichern.

Mal ehrlich: mit den paar Infobrocken, die du hier beisteuerst kommst du nicht weiter.
Falls dir aber einfach das Wissen um DB-Strukturen, AJAX usw. fehlen sollte (was ich vermute) ist dies Forum auch nicht geeignet, derartig grundlegende Kenntnisse zu vermitteln, die musst du dir schon woanders aneignen.
...