Ankündigung

Einklappen
Keine Ankündigung bisher.

Undefined variable

Einklappen

Neue Werbung 2019

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

  • Undefined variable

    Hallo zusammen,
    ich bin PHP Anfänger und versuche meine Homepage nach Wechsel von vermutlich PHP 5.2.17 auf PHP 5.3.10 wieder zum laufen zu bringen.
    Der folgende Code gibt mir die Fehlermeldung "Undefined variable: datum_1"
    PHP-Code:
    <?php
                $res_next 
    mysqli_query($quest"SELECT * FROM tbl_vorstellungen ORDER BY v_datum DESC");       
                
    $today_year date("Y");
                
    $today_mon date("m");
                
    $today_day date("d");
                
    $today $today_year."-".$today_mon."-".($today_day -1);
                while(
    $row_next = @mysqli_fetch_array($res_next))
                {
                    if(
    $row_next[1] > $today)
                    {
                        
    $datum_1 $row_next[1];
                        
    $projekt_ID $row_next[2];
                        
    $theater_ID $row_next[3];
                    }
                    else
                    {
                        break;
                    }
                }
                
    $tag substr($datum_182);
                
    $monat substr($datum_152);
                
    $jahr substr($datum_104);
                
    $datum $tag.". ".$monat.". ".$jahr;

                
    $res_proj = @mysqli_query($quest"SELECT p_titel FROM tbl_projekte WHERE projekt_ID = $projekt_ID");
                
    $row_proj = @mysqli_fetch_array($res_proj);
                
    $res_thumbs = @mysqli_query($quest"SELECT b_thumb FROM tbl_bilder WHERE projekt_ID = $projekt_ID");
             
    ?>
    gebe ich bei
    Code:
                  if($row_next[1] > $today)
    anstatt > ein = ein gibt es keine Fehlermeldung sondern ein Ergebnis.
    Vor dem Wechsel zu PHP 5.3.10 hat es funktioniert.
    Bestimmt ist es nur ein kleiner Logikfehler, aber ich stehe voll auf der Leitung.
    Ach ja, die Datenbank gibt ein Datum im Format 2014-08-14 aus, welches in der Vergangenheit liegt.
    Vielen Dank im Voraus für die Erhellung.
    Alexander


  • #2
    Meine Vermutung: Das Script war schon immer fehlerhaft und durch ein Upgrade auf 5.3 ist das Errorreporting nur etwas strenger.
    Standards - Best Practices - AwesomePHP - Guideline für WebApps

    Kommentar


    • #3
      Man muss nur die ganze Meldung lesen, dann sieht man auch, in welcher Zeile der Fehler besteht.
      --

      „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
      Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


      --

      Kommentar


      • #4
        Schreib das Ding nochmal neu... Wäre mein Vorschlag. Und dann ohne die @s... (Wenigstens nutzt du nicht die mysql_-Erweiterung)
        Current Projects: http://www.welten-buch.de, http://neu.zooadoo.de

        Kommentar


        • #5
          ..dann noch sind hier
          PHP-Code:
          $today_year date("Y");
                      
          $today_mon date("m");
                      
          $today_day date("d");
                      
          $today $today_year."-".$today_mon."-".($today_day -1); 
          auch strings wie '2014-08-00' möglich. Dies mag bei dir durch den Stringvergleich sogar zu funktionieren,
          ist jedoch alles andere als schön. Dies alles ist bestimmt mit einem WHERE in der SQL zu erschlagen und du hast eine saubere Lösung.
          PHP-Klassen auf github

          Kommentar

          Lädt...
          X