hot: if abfrage

hi, wie kann ich abfragen ob in einer variablen überhaupt etwas drin ist?

mfg hot

  1. Hi hot,

    hi, wie kann ich abfragen ob in einer variablen überhaupt etwas drin ist?

    wie wäre es mit empty, also in logischer Weiterführung deiner Frage mit dessen Negation "!empty"?

    Kurt

    --
    Nein, ich beantworte keine Anfragen per e-mail.
    ss:( zu:) ls:[ fo:) de:] va:| ch:| sh:( n4:° rl:( br:? js:| ie:% fl:( mo:?
    "Schweigen ist ein Argument, das kaum zu widerlegen ist."  (Heinrich Boell; dt. Schriftsteller u. Nobelpreistraeger; 1917-1985)
    http://elektro-dunzinger.at
    http://shop.elektro-dunzinger.at
    1. Hello,

      hi, wie kann ich abfragen ob in einer variablen überhaupt etwas drin ist?

      wie wäre es mit empty, also in logischer Weiterführung deiner Frage mit dessen Negation "!empty"?

      Aber fall nicht auf die Besonderheit von empty() rein!
      Empty() liefert auf true, wenn in der Variable 0 drinsteht, also der numerische Wert Null.
      Der ist aber bei vielen Eingabefprmularen ein gültiger Wert und muss daher anders geprüft werden

      besser ist daher:

      if (isset($variable) and strlen(trim($variable))>0)
        {
          #Wert vorhanden
        }
        else
        {
          #kein Wert vorhanden
        }

      Da via HTTP alle Werte als Textsequenzen kommen, ist diese Abfrage zulässig.

      Harzliche Grüße aus http://www.annerschbarrich.de

      Tom

      --
      Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
      Nur selber lernen macht schlau
      1. Hi Tom,

        hi, wie kann ich abfragen ob in einer variablen überhaupt etwas drin ist?

        wie wäre es mit empty, also in logischer Weiterführung deiner Frage mit dessen Negation "!empty"?

        Aber fall nicht auf die Besonderheit von empty() rein!
        Empty() liefert auf true, wenn in der Variable 0 drinsteht, also der numerische Wert Null.
        Der ist aber bei vielen Eingabefprmularen ein gültiger Wert und muss daher anders geprüft werden

        besser ist daher:

        if (isset($variable) and strlen(trim($variable))>0)
          {
            #Wert vorhanden
          }
          else
          {
            #kein Wert vorhanden
          }

        Da via HTTP alle Werte als Textsequenzen kommen, ist diese Abfrage zulässig.

        Oh, danke für den Hinweis.
        Da sieht man wieder mal, wozu mangelnde Erfahrung respektive ungenügendes Wissen führen kann.
        _Das_ wußte ich nämlich nicht. ;-)

        Kurt

        --
        Nein, ich beantworte keine Anfragen per e-mail.
        ss:( zu:) ls:[ fo:) de:] va:| ch:| sh:( n4:° rl:( br:? js:| ie:% fl:( mo:?
        "Das ist das Merkmal des grossen und guten Menschen, dass er immer zuerst auf das Ganze und auf andere sieht, auf sich zuletzt."  (Adalbert Stifter; oest. Schriftsteller; 1805-1868)
        http://elektro-dunzinger.at
        http://shop.elektro-dunzinger.at
        1. Hello,

          Oh, danke für den Hinweis.
          Da sieht man wieder mal, wozu mangelnde Erfahrung respektive ungenügendes Wissen führen kann.
          _Das_ wußte ich nämlich nicht. ;-)

          Bitte Kurt, gern geschehen.
          Aber bitte auch nicht soo viel Honig ums Maul.
          Ein kühles Hefeweizen wär mir jetzt lieber ;-)

          Harzliche Grüße aus http://www.annerschbarrich.de

          Tom

          --
          Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
          Nur selber lernen macht schlau
          1. Hi Tom,

            Oh, danke für den Hinweis.
            Da sieht man wieder mal, wozu mangelnde Erfahrung respektive ungenügendes Wissen führen kann.
            _Das_ wußte ich nämlich nicht. ;-)

            Bitte Kurt, gern geschehen.
            Aber bitte auch nicht soo viel Honig ums Maul.
            Ein kühles Hefeweizen wär mir jetzt lieber ;-)

            Ich würde dir dein Hefeweizen ja gerne gönnen, alleine der Weg... ;-)
            Btw, das hat nichts mit "Honig ums Maul schmieren" zu tun, ich war tatsächlich überrascht, als du mich auf diesen Umstand hingewiesen hast.
            Nochdazu erfolgte dieser Hinweis in derart netter Form, daß ich nicht umhinkam, mich dafür ganz artig zu bedanken. ;-)

            Kurt

            --
            Nein, ich beantworte keine Anfragen per e-mail.
            ss:( zu:) ls:[ fo:) de:] va:| ch:| sh:( n4:° rl:( br:? js:| ie:% fl:( mo:?
            "Ironie ist keine Waffe, eher ein Trost der Ohnmaechtigen."  (Ludwig Marcuse; dt. Publizist u. Schriftsteller; 1894-1971)
            http://elektro-dunzinger.at
            http://shop.elektro-dunzinger.at
      2. if (isset($variable) and strlen(trim($variable))>0)

        hi, kannst mir das vielleicht mal genauer erklären bitte?
        versteh folgendes nicht:
         and strlen(trim($variable))>0)

        was macht er genau in dieser zeile?

        1. Hi hot,

          if (isset($variable) and strlen(trim($variable))>0)

          hi, kannst mir das vielleicht mal genauer erklären bitte?
          versteh folgendes nicht:
          and strlen(trim($variable))>0)

          was macht er genau in dieser zeile?

          strlen >0 prüft, ob der Inhalt größer als 0 ist.
          trim($variable) entfernt vor der Prüfung führende und nachfolgende Leerzeichen, wodurch ein string, den nur aus Leerzeichen besteht, die Prüfung nicht besteht.

          Kurt

          --
          Nein, ich beantworte keine Anfragen per e-mail.
          ss:( zu:) ls:[ fo:) de:] va:| ch:| sh:( n4:° rl:( br:? js:| ie:% fl:( mo:?
          "Feindseligkeit ist eine persoenliche Unabhaengigkeitserklaerung."  (Aldous Leonard Huxley; engl. Schriftsteller u. Kulturkritiker; 1894-1963)
          http://elektro-dunzinger.at
          http://shop.elektro-dunzinger.at
          1. Hi hot,

            Hier noch die Links zu den Beschreibungen:
            http://at.php.net/manual/de/function.strlen.php
            http://at.php.net/manual/de/function.trim.php
            Hätte ich auch gleich machen können.... *grummel*

            Kurt

            Kurt

            --
            Nein, ich beantworte keine Anfragen per e-mail.
            ss:( zu:) ls:[ fo:) de:] va:| ch:| sh:( n4:° rl:( br:? js:| ie:% fl:( mo:?
            "Die Welt hat genug fuer jedermanns Beduerfnisse, aber nicht genug fuer jedermanns Gier."  (Mahatma Gandhi; ind. Politiker; 1869-1948)
            http://elektro-dunzinger.at
            http://shop.elektro-dunzinger.at
          2. Hallo!

            Der Thread ist ja ohnehin schon beendet, aber

            if (isset($variable) and strlen(trim($variable))>0)

            hi, kannst mir das vielleicht mal genauer erklären bitte?
            versteh folgendes nicht:
            and strlen(trim($variable))>0)

            was macht er genau in dieser zeile?

            strlen >0 prüft, ob der Inhalt größer als 0 ist.

            strlen > 0 prüft, ob die Länge des Variableninhalts größer 0 ist (... war wahrscheinl. ohnehin so gemeint ... nur der Korrektheit halber)

            Beste Grüße
            Viennamade

            1. Hi Viennamade,

              strlen >0 prüft, ob der Inhalt größer als 0 ist.
              strlen > 0 prüft, ob die Länge des Variableninhalts größer 0 ist (... war wahrscheinl. ohnehin so gemeint ... nur der Korrektheit halber)

              Ja, war so gemeint. Deshalb habe ich auch noch nachträglich die Seite verlinkt, da mir beim nachträglichen Durchlesen die Schwammigkeit meiner Erklärung aufgefallen ist. ;-)

              Kurt

              --
              Nein, ich beantworte keine Anfragen per e-mail.
              ss:( zu:) ls:[ fo:) de:] va:| ch:| sh:( n4:° rl:( br:? js:| ie:% fl:( mo:?
              "Das Glueck besteht darin, in dem zu Masslosigkeit neigenden Leben das rechte Mass zu finden."  (Leonardo da Vinci; it. Universalgenie; 1452-1519)
              http://elektro-dunzinger.at
              http://shop.elektro-dunzinger.at
    2. mhh versteh noch nicht ganz, hier mal was ich überprüfen will:

      $userid = $_COOKIE['forum_userid'];
                  $retid = mysql_query("SELECT * FROM users WHERE userid = '{$userid}'");
                  $row = mysql_fetch_assoc($retid);

      $userid möchte ich überprüfen und wenn true dann soll er weitermachen sondt else

      1. Hi hot,

        halte dich bitte an Toms Tip, der scheint mir der bessere zu sein. :o)

        Kurt

        --
        Nein, ich beantworte keine Anfragen per e-mail.
        ss:( zu:) ls:[ fo:) de:] va:| ch:| sh:( n4:° rl:( br:? js:| ie:% fl:( mo:?
        "Die Vernunft spricht leise, deshalb wird sie so oft nicht gehoert."  (Nehru; ind. Politiker; 1889-1964)
        http://elektro-dunzinger.at
        http://shop.elektro-dunzinger.at