While-Schleife wird nur einmal durchlaufen! Wieso?

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

  • While-Schleife wird nur einmal durchlaufen! Wieso?

    PHP-Code:
    while ($row $odbc->odbc_fetch()) {
              
    $auftrag = new auftrag($row);
              if (
    $auftrag->vergleichDatum($odbc,$mysql)) {
                 
    tu es
              

    Huhu,

    hab da ein kleines Problem und verstehe nicht woran es liegt.
    Die Funktion vergleichDatum() vergleicht wie der Name schon sagt 2 Daten miteinander. Ist ein Datum aktueller als das andere wird true zurückgegeben.
    Es sollen also Daten aus der Datenbank geholt werden und bei einem True der Funktion etwas getan werden und nur dann, ansonsten wird der nächste Datensatz geholt.
    Aber die Schleife bricht nach einem Durchgang ab und ich weiss nicht wieso.
    Lasse ich die If-Anweisung weg, läuft alles wie es soll.
    Ich hoffe mir kann jemand helfen, ich flipp gleich aus...

    Gruß

    PS: An der odbc_fetch()-funktion lieht es nicht, die wurde von mir selbst definiert

  • #2
    dann zeig doch mal deine funktion vergleichDatum(); außerdem scheint doch hier irgendwas nicht zu stimmen:
    PHP-Code:
    vergleichDatum($odbc,$mysql
    gruß
    peter
    Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
    Meine Seite

    Kommentar


    • #3
      PHP-Code:
      function vergleichDatum($odbc,$mysql) {
          
      $sql "SELECT g.rg_datum, a.aufnr " 
               
      "FROM auftrag a, gvg g " 
               
      "WHERE a.gvg = g.gvg "
               
      "AND a.aufnr = '".$this->auftragsnummer."'";
          
      $odbc->odbc_query($sql);
          
      $row $odbc->odbc_fetch();
          
      $datum $odbc->odbc_output("g.rg_datum");
          
      $sql "SELECT datum FROM datum ";
          
      $mysql->mysql_query($sql,"Wissensdatenbank");
          
      $row $mysql->mysql_fetch();
          if (
      $datum $row[datum])
            return 
      true;
          else
            return 
      false;  
        } 
      Das $odbc und $mysql sind Objekte einer Datenbankklasse, extra geschrieben...

      Kommentar


      • #4
        Und deine Klasse kann zwei Statements gleichzeitig verarbeiten? Wohl kaum!

        Kommentar


        • #5
          Wieso gleichzeitig, werden doch nacheinander abgearbeitet, oder steh ich mal wieder aufm Schlauch

          EDIT: Ich glaub ich hab jetzt verstanden, was du meinst

          Mein Gott, bin ich bescheuert

          Grüße und danke für den klapps aufn Hinterkopf php-desaster
          Zuletzt geändert von derNickPicker; 03.12.2007, 14:52.

          Kommentar

          Lädt...
          X