PHP und Checkboxen

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

  • PHP und Checkboxen

    Hi,
    mein Problem ist, dass ich eine PHP-Seite habe, die sich selber wieder aufruft. Wenn ich beim ersten Aufruf eine Checkbox angeklickt habe, und dann den Submit-Button drücke, ist das Häkchen in der Checkbox wieder weg. Es soll aber dort bleiben. Wie bekomme ich das hin.
    Gibt es in PHP irgendetwas wie:
    if ($name = "Müller) //Variable, die von der Checkbok kommt
    {
    $name.checked; // (???????)
    }
    Manus manum lavat.

  • #2
    <input type="checkbox" name="haken" value="bla bla" checked>

    oder habe ich was falsch verstanden????

    [Editiert von schmalle am 10-12-2001 um 11:45]
    h.a.n.d.
    Schmalle

    http://impressed.by
    http://blog.schmalenberger.it



    Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
    ... nur ohne :-)

    Kommentar


    • #3
      Php und Checkboxen

      Hi,
      ja da hast was falsch verstanden.
      Das ist alles schon richtig, nur wenn ich die Seite noch mal aufrufe, ist das Häkchen weg.
      Meine Zeile sieht so aus:
      <input type="checkbox" name="business" value="Business Equipment">
      Wenn ich die CheckBox anklicke und dann auf den Button klicke (<input type="submit" value="Subscribe">), wird dieselbe Seite wieder aufgerufen (<form action="<? $PHP_SELF ?>" method="post">) und das Häkchen ist weg. Es sollte aber da bleiben :-(

      Manus manum lavat.

      Kommentar


      • #4
        Code:
        <?php
        
        if($business == "Business Equipment")
          {
           echo "<input type=\"checkbox\" name=\"Business\" value=\"Business Equipment\" [b]checked[/b]>";
          } else { echo "<input type=\"checkbox\"  name=\"Business\" value=\"Business Equipment\">";
                 }
        
        ?>
        h.a.n.d.
        Schmalle

        http://impressed.by
        http://blog.schmalenberger.it



        Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
        ... nur ohne :-)

        Kommentar


        • #5
          Php und Checkboxen

          Hi,
          super, danke - genau das habe ich gemeint. Ich kann das leider aber erst heute Abend testen, da ich nicht aus unserem Firmennetz komme. Werde mich dann heute Abend noch mal melden.
          Manus manum lavat.

          Kommentar


          • #6
            hmm,

            musst aber drauf achten das die Variable auch imemr gesetzt ist, sonst gibts eine Warning, also immer zuerst
            Code:
            if (!isset($business)) { $business = ""; }
            am beginn des Scripts einbauen.

            Kommentar


            • #7
              was soll da für ne warung kommen? bei kommt keine ... ob die var gesetzt ist o. nicht ...

              gratulation zum status freak *g*
              h.a.n.d.
              Schmalle

              http://impressed.by
              http://blog.schmalenberger.it



              Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
              ... nur ohne :-)

              Kommentar


              • #8
                wenn die Konfiguration dementsprechend eingestellt ist, wird eine Warnung ausgegeben, daß die Variable nicht existiert (falls dem so ist). Ist aber nur ein Warning, kriegst du immer, wenn auf eine nicht existente Variable zugegriffen werden soll (vorausgesetzt error_reporting ist dementsprechend, s.o.).

                @Churchill27: Ansonsten kannst du auch dein Code bißchen kürzer und übersichtlicher halten, in dem du nicht die gesamte Form-Felder in PHP packst ->
                Code:
                <input type="checkbox" name="Business" value="Business Equipment"<? if($business == "Business Equipment") echo " checked";?>>

                Kommentar


                • #9
                  Php und Checkboxen

                  Hi,
                  (an Schmalle):
                  Hat echt super geklappt - Danke noch mal.
                  (an BrainBug):
                  Gute Idee, werde ich machen.

                  Jetzt habe ich aber noch ein anderes Problem.
                  Ich habe eine Textarea

                  Textarea: <textarea name="content" rows="15" cols="80"></textarea>

                  definiert und wenn ich auf den Button sende klicke, verschwindet der Text. Er soll aber stehen bleiben.
                  Leider hat die Textarea nicht wie das Input-Feld einen value. Wie kriege ich das also hin, dass der Text drin stehen bleibt ???

                  Danke im voraus

                  Manus manum lavat.

                  Kommentar


                  • #10
                    Der "value" eines Textarea wird ja von Start- und Endtag umfasst, d.h. es kann eher als Container aufgefasst werden. Wenn du also zwischen beide Tags einfach den Wert wieder reinechost:

                    <textarea name="content" rows="15" cols="80"><? echo $content; ?></textarea>

                    Falls erster Aufruf und error_reporting dementsprechend definiert, wird es ein Warning geben, da $content noch nicht existiert.

                    Kommentar


                    • #11
                      Php und Radiobutton

                      Kann mir jemand mein Problem auch für RadioButton erklären.

                      Quellcode:

                      <td width="50" align="center"><input type="radio" name="zertifikat" value="pfx" checked><div class="normal">pfx</div></td>
                      <td width="50" align="center"><input type="radio" name="zertifikat" value="pmm"><div class="normal">pmm</div></td>
                      <td width="50" align="center"><input type="radio" name="zertifikat" value="pkey"><div class="normal">pkey</div></td>

                      Das Formular ruft sich wieder selber auf und der erste RadioButton ist wieder markiert.

                      Wie schaffe ich es, damit der richtige Knopf markiert bleibt?

                      Auf den Namen, wie bei den Checkboxen kann ich ja wohl nicht abfragen, oder ?

                      Gruß, und danke schon mal
                      Manus manum lavat.

                      Kommentar


                      • #12
                        Re: Php und Radiobutton

                        Original geschrieben von Churchill27
                        Kann mir jemand mein Problem auch für RadioButton erklären.

                        [...]

                        Wie schaffe ich es, damit der richtige Knopf markiert bleibt?

                        Auf den Namen, wie bei den Checkboxen kann ich ja wohl nicht abfragen, oder ?
                        was willst du sonst abfragen, wenn nicht den namen samt zugeordnetem wert?

                        also: doch, doch genauso wie bei den checkboxen:
                        Code:
                        <input type="radio" name="zertifikat" value="pfx" <? if($zertifikat=="pfx") { echo "checked"; } ?>>
                        <input type="radio" name="zertifikat" value="pmm" <? if($zertifikat=="pmm") { echo "checked"; } ?>>
                        usw.

                        wobei du vermutlich möchtest, dass beim ersten aufruf der erste radiobutton aktiviert ist - entsprechend ist beim ersten radiobutton zu ergänzen:
                        Code:
                        <input type="radio" name="zertifikat" value="pfx" <? if(($zertifikat=="pfx")||!isset($zertifikat)) { echo "checked"; } ?>>

                        Kommentar


                        • #13
                          kürzer?

                          Salut zusammen!!

                          Grase im Moment die Foren nach einer kürzeren Lösung als eine if-Abfrage im Value der Checkbox/radiobuttons ab...
                          Habe ein Umfrageformular für ein Radio erstellt. Für das error-handling wäre es natürlich praktiksch, dass die buttons ihr Werte behalten... da es sich aber um mehr als 60 buttons handelt suche ich nach einer kürzeren lösung...
                          ich geb mir noch bis mitternacht, dann fang ich mit dem copy-past "if...." an

                          schönen abend noch!

                          eve*

                          Kommentar

                          Lädt...
                          X