Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] if-anweisung funktioniert, trotzdem fehlermeldung

Einklappen

Neue Werbung 2019

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

  • [Erledigt] if-anweisung funktioniert, trotzdem fehlermeldung

    Hallo,

    ich habe ein kleines Problem bei einer if-Anweisung.
    Obwohl die Anweisung funktioniert wie sie soll bekomme ich eine Fehlermeldung.

    Aufgebaut habe ich das ganze so:

    PHP-Code:
    $X $_POST['x'];
        
                if (
    $A $B) {
            
    $Y;
        } else {
            
    $X "0.00";
        } 
    Obwohl mir die daten richtig in die Datenbank eingetragen werden bekomme ich die fehlermeldung:

    Notice: Undefined index: x in C:\xampp\htdocs\ratnoize\set_script.php on line 21

    ich vermute dass es etwas mit dem $X = $_POST['x']; zu tun hat da $X ja nicht mehr händisch eingetragen wird sondern durch das IF bestimmt wird.

    kann mir jemand sagen wie ich die fehlermeldung wegbekomme?

    danke
    ratte

  • #2
    Wenn du keine POST-Anfrage machst bzw. eine machst ohne den Wert "x" zu übertragen, dann existiert der Index "x" auch nicht. Du musst also zuerst prüfen ob der Wert existiert bevor du einer anderen Variable ($X) den Wert zuweisen kannst.
    So viel zu ersten Zeile. Alles was danach kommt ist purer Quatsch.

    Kommentar


    • #3
      warum? funktionieren tut es ja.
      aber wie sage ich ihm sonst dass $X das ergebnis der IF-Anweisung sein soll?

      Kommentar


      • #4
        Wenn DU Hilfe willst, dann komm auch mit dem echten Code rüber.
        [COLOR="#F5F5FF"]--[/COLOR]
        [COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
        „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
        [URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
        [COLOR="#F5F5FF"]
        --[/COLOR]

        Kommentar


        • #5
          ist doch egal ob die variablen so oder so heißen, aber bitte:

          $win = $_POST['win'];

          if ($tipp = $result) {
          $win = $chance;
          } else {
          $win = "0.00";
          }

          wie gesagt, ich denke es liegt daran dass ich die variable $win mit eine $_POST versehen habe.
          wenn ich aber das $_POST rausnehme zeigt mir DW einen syntaxfehler an.

          und da das ganze ja funktioniert wie es soll verstehe ich nicht ganz wo die fehlermeldung herkommt bzw. wie ich die fehlermeldung wegbekomme.

          Kommentar


          • #6
            alles klar, hätte man auch gleich so beantworten können dass ich mir

            PHP-Code:
            $win $_POST['win']; 
            komplett sparen kenn.

            trotzdem danke.

            Kommentar


            • #7
              Dein Code ist von vorn bis hinten Müll, was soll man da schon sagen.
              [COLOR="#F5F5FF"]--[/COLOR]
              [COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
              „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
              [URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
              [COLOR="#F5F5FF"]
              --[/COLOR]

              Kommentar


              • #8
                So wie dein Code derzeit aussieht kannst du auch einfach folgendes verwenden:
                PHP-Code:
                $win $chance
                Damit ersparst du dir ein paar Zeilen und die schweren ifs.

                Kommentar


                • #9
                  Zitat von Tropi Beitrag anzeigen
                  So wie dein Code derzeit aussieht kannst du dir den Rest auch sparen und einfach folgendes schreiben:
                  PHP-Code:
                  $win $chance
                  Damit ersparst du dir ein paar Zeilen und die schweren ifs.

                  Kommentar


                  • #10
                    PHP-Code:
                    if ($A $B
                    Das ist kein Vergleich, sondern eine Zuweisung. Und da eine Zuweisung immer klappt, wird auch niemals der else-Zweig durchlaufen.

                    PHP-Code:
                    if ($A == $B
                    Das ist ein Vergleich.
                    Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

                    Kommentar


                    • #11
                      Und da eine Zuweisung immer klappt,
                      Das stimmt zwar,
                      wird auch niemals der else-Zweig durchlaufen.
                      das aber nicht. Entscheidend ist, was der Ausdruck liefert. Der Ausdruck einer Zuweisung liefert immer den zugewiesenen Wert. Und der kann sehr wohl == false sein.

                      PHP-Code:
                      <?php

                      if($a=0) {
                      } else {
                        echo 
                      'nope';
                      }
                      nope
                      [COLOR="#F5F5FF"]--[/COLOR]
                      [COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
                      „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                      [URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
                      [COLOR="#F5F5FF"]
                      --[/COLOR]

                      Kommentar


                      • #12
                        daran hats also gelegen. vielen dank.
                        und sorry wegen dem doppelten thread, bin etwas durcheinander gekommen.

                        Kommentar

                        Lädt...
                        X