Php Schleife

Flooow

Mitglied
Moooin =)

Ich habe eine Abfrage an eine Mysql Db.

Mein Code:

PHP:
$cmd = Yii::app()->db->createCommand("SELECT * FROM customer WHERE id >'1'");

$row = $cmd->queryScalar();



Mein Code wirft mir zur Zeit auch keinen Fehler, jedoch gibt queryScalar ja nur das erste Feld aus, was ja auch vollkommen richtig ist. Wie stelle ich das nun mit einer Schleife an, das alle Einträge ( id>'1') ausgegeben werden? Habe noch nicht soviel ahnung von den Schleifen..


danke sehr =)
 
Das steht in der Doku (http://www.yiiframework.com/doc/api/1.1/CDbCommand#queryScalar-detail):
Executes the SQL statement and returns the value of the first column in the first row of data. This is a convenient method of query when only a single scalar value is needed (e.g. obtaining the count of the records).

Ich glaube die Funktion queryAll() erledigt genau das, was du willst (http://www.yiiframework.com/doc/api/1.1/CDbCommand#queryAll-detail):
Executes the SQL statement and returns all rows.
 
Hatte ich leider schon probiert, jedoch liegt mein Problem darin, das ich aus irgendeinem Grunde , keine queryAll anfrage an die Datenbank senden kann, gibts da noch eine andere möglichkeit?

danke =)
 
Zuletzt bearbeitet:
Wenn es die API anbietet, sollte das doch auch funktionieren. Warum funktioniert es nicht? Das wäre doch die eigentliche Frage. Was bekommst du für Fehlermeldungen? Bekommst du überhaupt irgendwelche? Hast du dein Anliegen evtl. schon mal versucht im Forum der dortigen Community zu stellen?

http://www.yiiframework.com/forum/
 
Es kommt nicht direkt eine Fehlermeldung von Msql oder Php .

Meldung von Opera:

Die Verbindung wurde durch den Server beendet.

Überprüfen Sie, ob die Adresse richtig geschrieben ist, oder suchen Sie nach der Website.

Bei queryScalar wird ganz normal auf die Seite weitergeleitet und die Ausgabe ist zu sehen..
 
Dann hast du vermutlich in den Errorlogs deines Webservers irgendwas stehen? Wieviele Einträge sind denn in der Tabelle customer enthalten? Welche Version von MySQL verwendest du?
 
sind bestimmt um die 500 Einträge in der Tabelle.

Ich mach das mit Netbeans IDE 7.0
und greife halt auf ne Datenbank in Zope zu.
 
Sorry, von Zope habe ich keine Ahnung. Also kann es an mehreren Komponenten liegen. Meine Vermutung ist die DB selbst.
 
Ich habs. War anscheinend ne zu große Anzahl an Einträgen die Ausgeben werden müssen

Jedoch wird mir bei diesem Code

PHP:
$cmd = Yii::app()->db->createCommand("SELECT * FROM customer WHERE id >='1'AND id < '500'");



$dataReader=$cmd->query();
while(($row=$dataReader->read())!==false)
        foreach($dataReader as $row)
            $rows=$dataReader->readAll();

einfach mal nur " Array " ausgegeben. Es sind Einträge in dem zwischenfeld 1-500 vergeben, jedoch kommt halt nur diese Ausgabe.

Wo könnt der Fehler liegen? Tut mir leid euch immernoch zu belästigen, aber mir lässt das grad keine Ruhe :D
 
Zurück