King: Bei Aktualisieren wird leerer Datensatz in Tabelle eingefügt, wie kann ich das v

Hallo!

Ich hätte da folgende Fragen:

Bei meiner Hadwarebörse wird beim Aktualisieren der Seite Im Internet Explorer bereits ein leerer Datensatz in die DB hinzugefügt.

Wie kann ich das unterbinden?

Mein Kaufe-Feld ist in der Datenbank ein Ja/Nein-Feld. Wie kann ich mit Request.Form den Wert dieser Checkbox in die DB einlesen?
Bei folgender Methode erhalte ich einen weißen Bildschirm:

Kaufe=Request.Form("Kaufe")
SQL = INSERT INTO HardwareBoerse (Kaufe, ..) VALUES ('" &Kaufe& "',.)

Kann mir da wer weiterhelfen?

Dank im Voraus,
King

  1. Hallo!

    Ich hätte da folgende Fragen:

    Bei meiner Hadwarebörse wird beim Aktualisieren der Seite Im Internet Explorer bereits ein leerer Datensatz in die DB hinzugefügt.

    Wie kann ich das unterbinden?

    Mein Kaufe-Feld ist in der Datenbank ein Ja/Nein-Feld. Wie kann ich mit Request.Form den Wert dieser Checkbox in die DB einlesen?
    Bei folgender Methode erhalte ich einen weißen Bildschirm:

    Kaufe=Request.Form("Kaufe")
    SQL = INSERT INTO HardwareBoerse (Kaufe, ..) VALUES ('" &Kaufe& "',.)

    Kann mir da wer weiterhelfen?

    Dank im Voraus,
    King

    Hi,

    update is nich insert!

    Wenn du etwas in einem Datensatz updaten willst dann brauchst du folgendes Statement: "UPDATE tabelle SET feld2='wert2',feld2='wert2'"

    Insert bewirkt einen ganz neuen Datensatz in der Tabelle.

    Gruß, Frank

    1. Hallo!

      Ich hätte da folgende Fragen:

      Bei meiner Hadwarebörse wird beim Aktualisieren der Seite Im Internet Explorer bereits ein leerer Datensatz in die DB hinzugefügt.

      Wie kann ich das unterbinden?

      Mein Kaufe-Feld ist in der Datenbank ein Ja/Nein-Feld. Wie kann ich mit Request.Form den Wert dieser Checkbox in die DB einlesen?
      Bei folgender Methode erhalte ich einen weißen Bildschirm:

      Kaufe=Request.Form("Kaufe")
      SQL = INSERT INTO HardwareBoerse (Kaufe, ..) VALUES ('" &Kaufe& "',.)

      Kann mir da wer weiterhelfen?

      Dank im Voraus,
      King

      Hi,

      update is nich insert!

      Wenn du etwas in einem Datensatz updaten willst dann brauchst du folgendes Statement: "UPDATE tabelle SET feld2='wert2',feld2='wert2'"

      Insert bewirkt einen ganz neuen Datensatz in der Tabelle.

      Gruß, Frank

      Hi Frank!

      Ich will ja auch einen neuen Datensatz über ein Formular in der Tabelle anlegen.
      Das funktioniert ja auch super, nur wird eben bereits beim ersten Aufruf der ASP Seite im Internet-Explorer ein leerer Datensatz hinzugefügt. Genau das möchte ich vermeiden!

      Gibt's dazu eine Lösung?

      CU,
      Stephan

      1. Hi,

        Problem halbwegs verstanden.

        Ganz klar das der IE per den Datensatz wider willens anlegt, du gibst ja auch den Befehl dazu.

        Ruf doch die Seite mit dem Formular zuerst auf, ahh... du hast die Sachen sicher kombiniert (Formular + Datensatz einfügen in einer ASP Datei). Gibts dafür einen triftigen Grund, erfordert es die Logik. Wenn nein, dann trenn die Seiten und lass dann per Response.Redirect auf die Seite zurückverweisen (von der DB-Einfügeseite). Ansonsten mal mit Javascript und onSubmit versuchen -> damit eine Sessionvariable anlegen und die Einfügeprozedur nur ausführen wenn diese Sessionvariable existiert und ungleich 0 ist. Nur dann wird theoretisch die Einfügeprozedur ausgelöst.

        Praktisch hab ich damit noch nicht gespielt. Sorry. Aber vielleicht geht das ja: onSubmit='<%Session("xy")=1%>'.. probieren geht über studieren.

        Gruß, Frank

        1. Hi,

          Problem halbwegs verstanden.

          Ganz klar das der IE per den Datensatz wider willens anlegt, du gibst ja auch den Befehl dazu.

          Ruf doch die Seite mit dem Formular zuerst auf, ahh... du hast die Sachen sicher kombiniert (Formular + Datensatz einfügen in einer ASP Datei). Gibts dafür einen triftigen Grund, erfordert es die Logik. Wenn nein, dann trenn die Seiten und lass dann per Response.Redirect auf die Seite zurückverweisen (von der DB-Einfügeseite). Ansonsten mal mit Javascript und onSubmit versuchen -> damit eine Sessionvariable anlegen und die Einfügeprozedur nur ausführen wenn diese Sessionvariable existiert und ungleich 0 ist. Nur dann wird theoretisch die Einfügeprozedur ausgelöst.

          Praktisch hab ich damit noch nicht gespielt. Sorry. Aber vielleicht geht das ja: onSubmit='<%Session("xy")=1%>'.. probieren geht über studieren.

          Gruß, Frank

          Hi Frank!

          Dein Tipp war nicht schlecht.
          Hab die Seiten jetzt aufgeteilt nur wenn ich mit Response.Redirect auf die Formularseite zurückweise bekomme ich folgende Fehlermeldung:

          "Header-Fehler"

          "Die HTTP-Header sind bereits in den Client Browser geschrieben. Änderungen am HTTP-Header müssen vorgenommen werden, bevor der Seiteninhalt geschrieben wird."

          Wie kann ich dieses Problem auch noch lösen?

          Gruesse,
          King

          1. Hi,

            nix leichter als das... per einfachem Client-JavaScript.

            <SCRIPT LANGUAGE="JAVASCRIPT">
            <!--
            history.back();
            //-->
            </SCRIPT>

            Diesen Headerfehler bekomm ich auch dauernd, kein Plan warum. Ich nutz dann lieber dieses Javascript...

            Bye, Frank

            Hi Frank!

            Dein Tipp war nicht schlecht.
            Hab die Seiten jetzt aufgeteilt nur wenn ich mit Response.Redirect auf die Formularseite zurückweise bekomme ich folgende Fehlermeldung:

            "Header-Fehler"

            "Die HTTP-Header sind bereits in den Client Browser geschrieben. Änderungen am HTTP-Header müssen vorgenommen werden, bevor der Seiteninhalt geschrieben wird."

            Wie kann ich dieses Problem auch noch lösen?

            Gruesse,
            King