Problem mit Formularabfrage

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Problem mit Formularabfrage

    Hi,

    mir hat sich hier ein Problem aufgetan welches ich nicht so richtig verstehe.

    Problem ist folgende Zeile:
    <input type="submit" name="p_ende" value="Abmelden">

    Wenn ich nun abfrage ob der Button gedrückt wurde, was meines erachtens nach folgenden Möglichkeiten funktionieren sollte:
    if($p_ende != NULL)
    if(isset($p_ende)
    if(!(empty($p_ende)

    sollte doch die Schleife nur betretten werden wenn der Button gedrückt wurde. Leider wird die Schleife aber immer betretten.
    Da hab ich mir mal spassenshalber den Wert ausgeben lassen der in der
    Variable enthalten ist.
    echo $p_ende; ergab Abmelden ????????

    kann mich mal einer aufklären

    cu

  • #2
    if(!$p_ende == NULL)

    php-Entwicklung | ebiz-consult.de
    PHP-Webhosting für PHP Entwickler | ebiz-webhosting.de
    die PHP Marktplatz-Software | ebiz-trader.de

    Kommentar


    • #3
      Hi

      mmh wo soll den der Unterschied zwichen
      if(!$p_ende == NULL) und if($p_ende != NULL) sein
      *kopfkratz*

      Das Problem is ja nicht die Abfrage sondern das der Wert von Anfang an nicht NULL ist sondern der
      der Wert ist der in Value drin steht.

      Soll es nicht eigentlich so sein das TRUE zurück gegeben wird wen der Button gedrückt wird.

      cu

      [Editiert von Raphael am 23-07-2001 um 16:19]

      Kommentar


      • #4
        Der Unterschied ist, daß

        hier if(!$p_ende == NULL) die Schleife betreten wird, wenn $p_ende den Wert NULL (also nix) hat.
        Und bei dem Ausdruck if($p_ende != NULL) kommst du in die Schleife, wenn $p_ende ungleich NULL ist. Also irgendwas drinsteht.


        n0NAMe

        Kommentar


        • #5
          hi

          dann frag ich mich was das ! in if(!$p_ende == NULL)
          zu suchen hat. Denn Unterschied zwichen != und == kenn ich

          Wie gesagt der Wert is NIE NULL.

          sondern der Wert der in Value drin steht.
          ( ...value="Abmelden"> )

          grrr ich will TRUE oder False und kein "Abmelden"

          cu

          Kommentar


          • #6
            Beim Druck auf Return in einem Formular (Ausnahme: textareas) wird immer der Default-Button angeklickt.
            Das scheint in deinem Fall der Abmelden-Knopf zu sein.

            In welchem Fall gibt er denn noch "Abmelden" aus?
            mein Sport: mein Frühstück: meine Arbeit:

            Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

            Kommentar


            • #7
              hallo,

              das ganze Formular besteht aus den 3 Zeilen

              <form name="sfmstart2.php" method="post">
              <input type="submit" name="p_ende" value="Abmelden">
              </form>

              der Sinn der Sache soll sein das sich der Benutzer abmeldet
              um noch ein paar Sachen sicher zustellen (z.B. mysql_close())

              zur Zeit rennt er aber immer in die Schleife rein und ruft
              natürlich dabei mysql_close() auf aber zu diesem Zeitpunkt wurde noch keine Verbindung aufgebaut und haut mir natürlich eine Fehlermaldung an den Kopf,dadurch wurde ich erstmal auf das Problem aufmerksam.

              das "Abmelden" gab er aus als ich mir den Wert von $p_ende hab anzeigen lassen, weil er ja nie NULL war wollte ich mal wissen was den drinsteht,also hab ich mal echo $p_ende; in die Schleife eingebaut;

              Kommentar


              • #8
                $p_ende ist auch gesetzt, wenn du die Seite direkt aufrufst?
                Wenn ja, dann fehlt wahrscheinlich bei einem Vergleich eins der beiden Gleichheitszeichen.
                if ($p_ende = 'Abmelden') ... ist immer true.
                Um so etwas zu vermeiden, besser die Konstante nach vorne stellen: if ('Abmelden' = $p_ende) ... gibt einen parse error.

                Wenn's das nicht ist, bin ich momentan auch überfragt.

                Btw.: Ich hoffe, $p_ende wird nicht irgendwo in dem Skript als Session-Variable registriert.
                mein Sport: mein Frühstück: meine Arbeit:

                Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

                Kommentar


                • #9
                  So jetzt is die Welt wieder in Ordnung ;-)

                  Hi,

                  Hab mir gestern nochmal nen Dummy gebaut der funktionierte einwandfrei.

                  Und jetzt gehts auch wieder, das Problem lag beim Reload dabei wurden die Werte nicht zurückgesetzt und ich dachte es is was am Script faul. Hab jetzt das Script so abgeändert das die Variablen zwangsläufig zurück gesetzt werden und jetzt klappts auch mit dem Reload.

                  cu

                  Kommentar

                  Lädt...
                  X