hawkmaster: Erklärungsversuch, fetch() bringt nichts zurück?

Beitrag lesen

Hallo zusammen,
vielen Dank an euch für die Hilfe und Tipps.
ich weiss das das Code Beispiel nicht gerade optimal ist und auch das man kein * verwenden soll.
Mir ging es vor allem eigentlich um das "warum" bringt der letzte "fetch" nichts zurück?.

Wenn man das ganze mit mysql() Funktionen machen würde, geht folgendes:

$result = mysql_query("SELECT * FROM test WHERE TestID = '{$row[TestID]}'") ;
$found = mysql_num_rows($result);
if($founddepid == 0){
$result = mysql_query("SELECT * FROM test WHERE TestID = '0'");
}
$sql = mysql_fetch_array($result);

Hier ist das "mysql_fetch_array" auf $result möglich.

Warum geht im PDO Beispiel das nicht:
$sql = $result->fetch(PDO::FETCH_ASSOC);

Es würde ja auch folgendes nicht gehen: (mal abgesehen das es keinen Sinn macht)

$sql = $result->fetch(PDO::FETCH_ASSOC);
$sql = $result->fetchAll();

Ist es so das "$result" schon "belegt" (oder verbraucht?) ist?

viele Grüße
hawk