Récupérer la valeur n+1 d'une boucle while

Eléphanteau du PHP | 17 Messages

14 nov. 2011, 20:19

Bonjour,

je voudrais récupérer la valeur n+1 d'une boucle while
$sql = 'SELECT nom FROM maTable';
$result = mysql_query($sql);
while($row = mysql_fetch_array($result)) {
	echo $row["nom"];
	echo $row["nom"+1];
}
comment faire ?
merci

Mammouth du PHP | 672 Messages

15 nov. 2011, 10:03

Bonjour.

Je ne crois pas que ce soit faisable simplement :cry:

suivant ce que tu veux faire exactement, le plus simple serait peut-être de stocker la valeur N-1 :
$sql = 'SELECT nom FROM maTable';
$result = mysql_query($sql);
$precedent = '';
while($row = mysql_fetch_array($result)) {
   if ($precedent != '') {
      echo $precedent;
   }
   echo $row["nom"];
   $precedent = $row["nom"];
}
}

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

15 nov. 2011, 10:13

salut,

http://www.php.net/manual/fr/function.m ... a-seek.php a gérer avec une boucle for, comme indiqué dans la doc ;)

@+
Il en faut peu pour être heureux ......

Eléphanteau du PHP | 17 Messages

15 nov. 2011, 13:00

ça a l'air de fonctionner comme ça
$sql = 'SELECT nom FROM maTable';
$result = mysql_query($sql);
for ($i=0; $i < mysql_num_rows($result); $i++) {
	mysql_data_seek($result, $i);
	$row=mysql_fetch_array($result);
	echo $row["nom"]." ";
	
	if($i < mysql_num_rows($result)-1) {
		mysql_data_seek($result, $i+1);
		$row=mysql_fetch_array($result);
		echo $row["nom"]."<br>";
	}
}
merci