0 und empty

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

  • 0 und empty

    mahlzeit ... ich hab da ein kleines problemchen, für das mir adhoc eine lösung fehlt:
    PHP-Code:
    <?
    $_POST['group'] = 0;
    $_POST['uid'] = '';

    if(empty($_POST['group']) && empty($_POST['uid']))
        echo 'nix da';
    ?>
    ^^ unter php 4.1.1 gibt der schnipsel "nix da" aus, OBWOHL $_POST['group'] mit 0 gefüllt ist und bei einem print_r das auch ausgibt.

    das problem könnte in der gleichen interpretation von 0 und FALSE liegen, denn wenn ich TRUE zuweise, wird die bedingung nicht erfüllt.

    der haken ist: ich brauche die 0 (kommt als wert aus einem select) und in dem fall darf die bedingung auch nicht greifen. was tun?
    Kissolino.com

  • #2
    laut manual und eigener Erfahrung liefert:

    0
    0,0
    leer
    und nicht definiert immer true
    mfg
    marc75

    <Platz für anderes>

    Kommentar


    • #3
      if($_POST['group'] != 0 ?!?

      Oder die 0 zum String machen ...
      h.a.n.d.
      Schmalle

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



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

      Kommentar


      • #4
        isset() ist dein freund
        INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


        Kommentar


        • #5
          !isset() würde dien gewünschtes ergebnis liefern ..
          vlg. http://www.php.net/manual/de/types.comparisons.php
          mfg,
          [color=#0080c0]Coragon[/color]

          Kommentar


          • #6
            entweder versteht ihr mich nicht, oder ich euch

            also folgendes select:
            Code:
                          
            <select name="group" onChange="this.form.uid.options.selectedIndex=0">
                            <option value="">-</option>
                            <option value="0" selected>bla0</option>
                            <option value="1">bla1</option>
                            <option value="2">bla2</option>
            </select>
            sende ich den ab (mit 0 markiert), ist
            - isset() = true, die var ist vorhanden ... steht wohl nur auf FALSE und damit empty ?
            - print_r liefert 0 ... damit sollte es nicht empty sein
            - $_POST['group'] = (string)$_POST['group']; will auch nicht *grml*

            @coragon
            ich schaus mir gleich mal an
            Kissolino.com

            Kommentar


            • #7
              Original geschrieben von Coragon Rivito
              !isset() würde dien gewünschtes ergebnis liefern ..
              vlg. http://www.php.net/manual/de/types.comparisons.php
              den hab ich gesucht ... danke
              Kissolino.com

              Kommentar


              • #8
                Original geschrieben von Wurzel
                - print_r liefert 0 ... damit sollte es nicht empty sein
                doch - und zwar schlicht und einfach nach der definition von empty:

                "Diese Funktion liefert TRUE, wenn eine Variable nicht definiert, leer oder gleich 0 ist"


                du hast dir also eine für dein vorhaben schlicht und einfach untaugliche funktion ausgesucht.
                I don't believe in rebirth. Actually, I never did in my whole lives.

                Kommentar


                • #9
                  Original geschrieben von Wurzel
                  den hab ich gesucht ... danke
                  du witzbold. das habe ich doch auch gepostet und bei mir bedankst du dich nicht.

                  ach ja ... habe ich dir nicht schon immer gesagt, du solltest mit isset() prüfen? aber nein. der wurzelwerker muss ja auf sein empty() pochen.
                  INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                  Kommentar


                  • #10
                    Original geschrieben von wahsaga
                    doch - und zwar schlicht und einfach nach der definition von empty:

                    "Diese Funktion liefert TRUE, wenn eine Variable nicht definiert, leer oder gleich 0 ist"


                    du hast dir also eine für dein vorhaben schlicht und einfach untaugliche funktion ausgesucht.
                    man könnte zu Wurzel glatt sagen er solle mal das Manual lesen.
                    mfg
                    marc75

                    <Platz für anderes>

                    Kommentar


                    • #11
                      Original geschrieben von marc75
                      man könnte zu Wurzel glatt sagen er solle mal das Manual lesen.
                      das meine ich aber auch mal ....
                      INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                      Kommentar


                      • #12
                        Original geschrieben von wahsaga
                        du hast dir also eine für dein vorhaben schlicht und einfach untaugliche funktion ausgesucht.
                        ich hab eher den eindruck, 0 ist generell der falsche wert... !isset() bringt es übrigens auch nicht ... ich strick es jetzt um.

                        @haxe
                        isset != !isset ... ausserdem meinte ich den link zudem sollte '0' zu den gültigen werten gehören ... hach ist das schwierig *seufz*
                        Kissolino.com

                        Kommentar


                        • #13
                          ach wurzel ... Mit Dir hat man´s auch nicht leicht

                          Warum eigentlich nict nicht != 0?
                          h.a.n.d.
                          Schmalle

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



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

                          Kommentar


                          • #14
                            Original geschrieben von Wurzel
                            @haxe
                            isset != !isset ... ausserdem meinte ich den link zudem sollte '0' zu den gültigen werten gehören ... hach ist das schwierig *seufz*
                            du hast ja keine ahnung ....

                            PHP-Code:
                            <?
                                $_POST['group'] = 0;

                                if(isset($_POST['group']) && is_numeric($_POST['group']))
                                    echo 'die welt ist in ordnung';
                            ?>
                            INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                            Kommentar


                            • #15
                              Original geschrieben von schmalle
                              ach wurzel ... Mit Dir hat man´s auch nicht leicht
                              tja. so ist er eben ....

                              Original geschrieben von schmalle
                              Warum eigentlich nict nicht != 0?
                              weil der wert dann auch 1 sein könnte ...
                              INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                              Kommentar

                              Lädt...
                              X