checkbox: steh gerade auf dem schlauch

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

  • checkbox: steh gerade auf dem schlauch

    Hi,

    ich bin ein wenig aus PHP rausgekommen in den letzten Monaten und bin jetzt geraqde dabei ne kleine Seite mit nem Anmeldeformular zu machen und hab irgendwie ein "dummes" Problem mit den checkboxen.

    Eine Checkbox sieht folgendermassen aus

    PHP-Code:
    <input type="checkbox" name="userteilnahme" value="Yes"
    So, nun schicke ich das Formular mit all dem anderen Kram (Adresse, Name usw.) fort und schreib es in die Datenbank.

    Nun wollte ich mir testweise ausgeben lassen, was den im Wert der Checkbox drinsteht. Bisher dachte ich immer, da steht der Wert drin, in diesem Fall "Yes", aber er zeigt mir ständig nur "on" an, egal was ich beim value eintrage.

    PHP-Code:
     echo "Test1".$_POST['userteilnahme']."<br>";

     if (isset(
    $_POST['userteilnahme']) && $_POST['userteilnahme'] == 'Yes') {
            echo 
    "Test2".$_POST['userteilnahme']."<br>";
      } 

    So sollte er doch in die If-Anweisung reingehen, macht er aber nicht.
    Lasse ich mir den Wert vor der If-Schleife anzeigen gibt er mir immer "on" zurück und nicht "Yes".


    Verpeil ich gerade irgendwas? So hab ich das in altem Quellcode von mir immer gemacht und da klappte es.
    Zuletzt geändert von The Sidewinder; 14.09.2005, 17:01.

  • #2
    <input type="checkbox" name="userteilnahme" value="Yes">
    $_POST['userbezahlt']
    Fällt dir da nichts auf?

    Du lässt dir zweimal $_POST['userbezahlt'] ausgeben, und da du nichts weiteres ausgeben lässt, ist nicht klar welches echo da ausgeführt wird.
    Zuletzt geändert von ExInfernis; 14.09.2005, 16:56.

    Kommentar


    • #3
      Sorry, Schreibfehler beim Posten...im Quellcode steht natürlich richtg. Bin beim Kopieren in der Zeile Verrutscht. Also daran liegst net :-) Ist halt nen langer Tag heute.

      Und es ist die äußere Ausgabe, ich hab da schon mehrfach rumprobiert. Ganz sicher.

      Aber ich ändere es jetzt nochmal, damit es nicht noch jemand fragt

      Sonst jemand ne Idee?
      Zuletzt geändert von The Sidewinder; 14.09.2005, 16:59.

      Kommentar


      • #4
        Hmm, hat sich anscheinend erledigt...hab den Server (XAMPP) mal zurückgesetzt und jetzt scheint es wieder zu gehen...ich mach schluß für heute... :-)

        Danke fürs "mitdenken" ;-)

        Kommentar


        • #5
          Seltsam...

          hast dir den Quellcode deines Formulares durchgesehen ob evtl. noch ein Input mit dem gleichen Namen existiert, der dir den Wert aus deiner gewünschten Checkbox evtl. überschreibt?
          Ging mir mal so und ich hab mich ne Stunde lang im Script totgesucht

          EDIT:
          Aso... auch seltsam
          Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
          Schön - etwas Geschichte kann ja nicht schaden.
          Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

          Kommentar


          • #6
            hast du so schon mal probiert?
            PHP-Code:
            if (isset($_POST['userteilnahme']) && $_POST['userteilnahme'] != '') {
            $userteinalhme 'yes';
                    echo 
            $userteilnahme."<br>";
              } 
            In Flames - Pinbal Map
            Becoming the Archetype - No Fall Too Far
            Pantera

            Kommentar


            • #7
              Also Checkboxen liefern immer nur ein "on", wenn sie vor dem Submit ausgewählt wurden. Wurden sie nicht ausgewählt und das Formular wird submitted, dann existiert der Array Index in $_GET oder $_POST im PHP gar nicht. Den Wert, den Du da als Value reinbringst ist völlig unerheblich, da Checkboxen nichts anderes kennen als an und aus.

              Kommentar


              • #8
                Original geschrieben von bitesser
                Also Checkboxen liefern immer nur ein "on", wenn sie vor dem Submit ausgewählt wurden. Wurden sie nicht ausgewählt und das Formular wird submitted, dann existiert der Array Index in $_GET oder $_POST im PHP gar nicht. Den Wert, den Du da als Value reinbringst ist völlig unerheblich, da Checkboxen nichts anderes kennen als an und aus.
                Hmmm, dann habe ich wohl besonders schlaue Checkboxen... Meine geben den Value weiter, den ich ihnen gebe.

                Kommentar


                • #9
                  aber nur, wenn sie angeklickt wurden. das hat bitesser ja auch gesagt.

                  Kommentar


                  • #10
                    Original geschrieben von penizillin
                    aber nur, wenn sie angeklickt wurden. das hat bitesser ja auch gesagt.
                    ja, aber er meinte auch, dass der value von checkboxen vollkommen irrelevant wäre, weil er nie übertragen wird, sondern (im angekreuzten zustand) lediglich "on" - und das ist falsch.
                    I don't believe in rebirth. Actually, I never did in my whole lives.

                    Kommentar


                    • #11
                      Achso, dann habe ich diesen Satz wohl falsch verstanden...
                      Original geschrieben von bitesser
                      Also Checkboxen liefern immer nur ein "on", wenn sie vor dem Submit ausgewählt wurden.

                      Kommentar


                      • #12
                        ok, belassen wir das unter dem begriff "interpretationsfreiheit".

                        Kommentar

                        Lädt...
                        X