io di solito uso lo while().

Codice PHP:

$i 
1;
while (
$rigo mysql_fetch_array($result)) {
echo 
"
<tr>
     <td>Posizione 
$i</td>
     <td><input type=\"text\" name=\"posizione\" size=\"2\" value=\"
$row[$i]\"></td>
</tr>
<tr>
     <td>Titolo 
$i</td>
     <td><input type=\"text\" name=\"titolo\" size=\"50\" value=\"
$row['txtTitolo']\"></td>
</tr>
<tr>
     <td>Testo 
$i</td>  
     <td><textarea name=\"testo\" cols=\"60\" rows=\"5\">
$row['txtTesto']</textarea></td>
</tr>
"
;
$i++;

Ad ogni modo, oggetti preconfezionati come objRec.MoveNext - che ti permettono di scorrere i risultati di una query senza stare troppo ad arrovellarti con il codice - non credo esistano in PHP, a meno che qualcuno non si sia messo lì e si sia creato la propria classe.