jochen: $_POST

Guten Abend.

Auf einer Seite ist eine Funktion $_Post die Formulardaten ausliest. Auf diese Seite kann man aber auch zugreifen, ohne dass ein Formular daten überträgt.

Dann kommt die Fehlermeldung Undefined Index: mit dem nicht auslesbaren Forumlarfeld, da ja keine Daten zum auslesen bereit stehen.

Wie kann ich das abstellen, dass diese Fehlermeldung nicht mehr kommt, wenn keine Daten übertragen werden?

  1. Hallo jochen.

    Auf einer Seite ist eine Funktion $_Post die Formulardaten ausliest.

    Du meinst nicht zufällig eigentlich die im Betreff genannte Superglobale $_POST? Eine Funktion ist diese nicht.

    Wie kann ich das abstellen, dass diese Fehlermeldung nicht mehr kommt, wenn keine Daten übertragen werden?

    Indem du auf die einzelnen Arrayschlüssel nur dann zugreifst, wenn sie gesetzt wurden.

    Einen schönen Montag noch.

    Gruß, Mathias

    --
    sh:( fo:} ch:? rl:( br: n4:~ ie:{ mo:| va:) de:> zu:} fl:( ss:) ls:[ js:|
    debian/rules
  2. Moin!

    Wie kann ich das abstellen, dass diese Fehlermeldung nicht mehr kommt, wenn keine Daten übertragen werden?

    Frage mit isset(), ob der jeweilige Index in $_POST existiert, und gib im Erfolgsfall den Variableninhalt aus. Andernfalls eben nichts.

    Der ternäre Operator könnte hierbei ggf. hilfreich sein.

    - Sven Rautenberg

    --
    "Love your nation - respect the others."
    1. Hi Sven!

      Der ternäre Operator könnte hierbei ggf. hilfreich sein.

      Das ist doch "===". Nur für mich zum Verständnis. Wozu kann der in dieser Hinsicht hilfreich sein? Entweder der Arrayschlüssel existiert mit entsprechendem Inhalt oder nicht, oder?

      MfG H☼psel

      --
      "It's amazing I won. I was running against peace, prosperity, and incumbency."
      George W. Bush speaking to Swedish Prime Minister unaware a live television camera was still rolling, June 14, 2001
      Selfcode: ie:% fl:( br:> va:) ls:& fo:) rl:? n4:& ss:| de:] js:| ch:? sh:( mo:) zu:)
      1. Moin!

        Der ternäre Operator könnte hierbei ggf. hilfreich sein.

        Das ist doch "===".

        Google hilft gegen Nichtwissen.

        - Sven Rautenberg

        --
        "Love your nation - respect the others."
        1. Hey,

          also ihr habt mich überzeugt.

          Ich habe nun folgendes:

          if(isset($_POST['blabla'])) {

          meine eigentliche funktion wurde komplett in den true bereich gepackt, im false ist nix, also gibt er auch nix aus.

          }

          richtig so?

          danke jochen

          1. Hi,

            richtig so?

            Ja. :)

            Gruß, Cybaer

            --
            Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!
  3. Hi,

    versuch mal @$_POST

    1. Moin!

      versuch mal @$_POST

      Eine Fehlermeldung verhindert man nicht durch Unterdrückung der Anzeige dieser Fehlermeldung, sondern durch Korrektur des Fehlers.

      - Sven Rautenberg

      --
      "Love your nation - respect the others."
  4. hallo,

    danke für eure hilfe, da ich eher der faule typ bin und das @ funkt, nutze ich dies, mit dem bewussten wissen, dass es alle fehler von $_Post unterdrückt, aber dies ist bei meinem projekt erstmal egal.

    danke

    1. 'Nabend Jochen.

      da ich eher der faule typ bin und das @ funkt, nutze ich dies, mit dem bewussten wissen, dass es alle fehler von $_Post unterdrückt, aber dies ist bei meinem projekt erstmal egal.

      Nein, du scheinst eher der dumme Typ zu sein. Du wirst noch genug andere, schwerer aufzustöbernde Bugs in deine Programme einbauen ... Warum korrigierst du also nicht die *offensichtlichen* Fehler, auf die PHP dich hilfreicherweise aufmerksam macht, sondern steckst dir die Finger in die Ohren und tust, als gäbe es sie [1] nicht?!

      [1] Die Fehler. Nicht die Ohren oder die Finger. ;)

      --
      Once is a mistake, twice is jazz.