Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
While-Schleife wird nur einmal durchlaufen! Wieso? [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr
brauche Webseite ideal für Vereine und Firmen
- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
While-Schleife wird nur einmal durchlaufen! Wieso?


 
derNickPicker
03-12-2007, 14:09 
 
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

 
Kropff
03-12-2007, 14:15 
 
dann zeig doch mal deine funktion vergleichDatum(); außerdem scheint doch hier irgendwas nicht zu stimmen:
vergleichDatum($odbc,$mysql)

gruß
peter

 
derNickPicker
03-12-2007, 14:19 
 
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...

 
PHP-Desaster
03-12-2007, 14:20 
 
Und deine Klasse kann zwei Statements gleichzeitig verarbeiten? Wohl kaum!

 
derNickPicker
03-12-2007, 15:40 
 
Wieso gleichzeitig, werden doch nacheinander abgearbeitet, oder steh ich mal wieder aufm Schlauch ;)

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

Mein Gott, bin ich bescheuert :goth:

Grüße und danke für den klapps aufn Hinterkopf php-desaster

- -

Alle Zeitangaben in WEZ +2. Es ist jetzt 23:12 Uhr.