FLA: SQL-Statement in ASP-Seite

Ich möchte über eine ASP-Seite eine Access-Datenbank verwalten. Auf der Seite wird der Inhalt der Tabelle über SQL-Statements ausgelesen. In der Tabelle gibt es einen Ja/Nein-Wert ("Erledigt"), den ich auf der HTML-Seite mit einer Checkbox versehen habe. Wie kann ich realisieren, daß mit Aktivieren der Checkbox der Datensatz in der betroffenen Zeile (nicht in allen Zeilen !) bearbeitet wird ? Bei Aktivieren der Checkbox soll "Erledigt" auf True gesetzt werden, bei Deaktivieren auf False.

Die Zeilen, die ich suche, stelle ich mir folgendermaßen vor :

If Checkbox = Aktiviert then strSQL ="UPDATE tabelle SET erledigt = True WHERE tabelle.zeile = nr-variable"

If Checkbox = Deaktiviert then strSQL ="UPDATE tabelle SET erledigt = False WHERE tabelle.zeile = nr-variable"

Danke schon mal im voraus !

  1. schon beim Auslesen der Tabelle jedes Checkbox mit hidden=primary key der Zeile versehen

    Nach dem Senden:
    loop
    für alle primary key
        if checkbox = aktiviert then
           UPDATE tabelle SET erledigt = true
           WHERE tabelle.zeile = primary key
        else
           UPDATE tabelle SET erledigt = true
           WHERE tabelle.zeile = primary key
        end if
    end loop

  2. Die Zeilen, die ich suche, stelle ich mir folgendermaßen vor :

    If Checkbox = Aktiviert then strSQL ="UPDATE tabelle SET erledigt = True WHERE tabelle.zeile = nr-variable"

    If Checkbox = Deaktiviert then strSQL ="UPDATE tabelle SET erledigt = False WHERE tabelle.zeile = nr-variable"
    Danke schon mal im voraus !

    Hallo,

    Aktionen, wie das An- und Ausklickern von Checkboxen sind grundsätzlich ersteinmal clientseitig und haben deshalb gar nichts mit dem Ändern eines Datensatzes zu tun, weil dieses auf einem Server geschieht.

    Also so wie du dir das gerade vorstellst, geht es nicht.

    Ein (wenn nicht sogar der einzige) verläßliche Wert führt darüber deine Checkbox in ein Formular zu setzen und dieses abzuschicken, damit es auf dem Server verarbeitet werden kann. Dann kannst du dort anhand des gesendeten Wertes für die Checkbox (wenn ausgeklickert, dann wird kein Wert mit dem Namen der Checkbox gesendet) die Update-Aktion am entsprechenden Datensatz vollziehen. Dazu mußt du auch einen Datensatzidentifier (wie z.b. eine Nummer aus einem ID-Feld in deiner DB-Tabelle) in das Formular mit einbauen.

    Das Formular könnte man dann auch automatisiert durch einen Eventhandler auf die Checkbox abschicken, was aber nicht besonders schicklich ist, denn Javascript muß dazu bei allen aktiviert sein und außerdem wäre es lästig, wenn schon gleich beim ersten Klick irgendwelche Aktionen vollführt werden... (man kann sich ja auch mal verklicken ??!!)

    Auch dein Gedanke, die Tabellenzeilennummer als Bedingung zu nehmen ist nicht geeignet. Du solltest beim darstellen der Checkbox davor schon auch ein verstecktes Inputfeld für deinen Datensatzidentifier als HTML an den Client zurückschreiben.

    Ich hoffe, ich hab dich auf den richtigen Weg bringen können. Dies ist keine schwere Aufgabe, du wirst sie sicherlich bald (auch ohne weitere Hilfe) gelöst haben.

    Gruß, Frank