PHP pb sur une condition dans une boucle
woody67
-
Profil bloqué -
Profil bloqué -
Bonjour,
Attention Programmeur débutant.
<?php
//Test pour vérifier que l'id correpondant à $_GET['id']+1 existe dans la table $_GET['table'].
mysql_connect("localhost", "root", "") or exit (mysql_error()); //connexion base image
mysql_select_db("images") or exit (mysql_error());
$id=$_GET['id']; //définition variable id
do //boucle pour récupérer id suivant en s'assurant de son existence dans la base
{
$id++;
$retour=mysql_query('SELECT id FROM '.$_GET['table'].' WHERE id= '.$id) or die(mysql_error());
$donnees=mysql_fetch_array($retour) or die(mysql_error());
$var=$donnees['id'];
} while (!isset($var));
echo 'valeurVar= '.$var.'<br />';
echo 'valeurId+1= '.$id.'<br />';
mysql_close();
?>
Le script fonctionne tant que l'id existe dans la table mais s'arrète quand l'id n'existe pas et sans donner de message d'erreur. En effet je souhaite une incrémentation de l'id tant que la condition (!isset($var)) est vrai,c'est à dire tant que $donnees['id'] n'existe pas.
Attention Programmeur débutant.
<?php
//Test pour vérifier que l'id correpondant à $_GET['id']+1 existe dans la table $_GET['table'].
mysql_connect("localhost", "root", "") or exit (mysql_error()); //connexion base image
mysql_select_db("images") or exit (mysql_error());
$id=$_GET['id']; //définition variable id
do //boucle pour récupérer id suivant en s'assurant de son existence dans la base
{
$id++;
$retour=mysql_query('SELECT id FROM '.$_GET['table'].' WHERE id= '.$id) or die(mysql_error());
$donnees=mysql_fetch_array($retour) or die(mysql_error());
$var=$donnees['id'];
} while (!isset($var));
echo 'valeurVar= '.$var.'<br />';
echo 'valeurId+1= '.$id.'<br />';
mysql_close();
?>
Le script fonctionne tant que l'id existe dans la table mais s'arrète quand l'id n'existe pas et sans donner de message d'erreur. En effet je souhaite une incrémentation de l'id tant que la condition (!isset($var)) est vrai,c'est à dire tant que $donnees['id'] n'existe pas.
A voir également:
- PHP pb sur une condition dans une boucle
- Excel cellule couleur si condition texte - Guide
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Excel colorer une cellule sous condition d'une autre cellule - Forum Excel
- Php alert ✓ - Forum PHP
2 réponses
do //boucle pour récupérer id suivant en s'assurant de son existence dans la base
{ <=====??????
$id++;
$retour=mysql_query('SELECT id FROM '.$_GET['table'].' WHERE id= '.$id) or die(mysql_error());
$donnees=mysql_fetch_array($retour) or die(mysql_error());
$var=$donnees['id'];
}<======????
il faut les enlever
{ <=====??????
$id++;
$retour=mysql_query('SELECT id FROM '.$_GET['table'].' WHERE id= '.$id) or die(mysql_error());
$donnees=mysql_fetch_array($retour) or die(mysql_error());
$var=$donnees['id'];
}<======????
il faut les enlever
Merci d'avoir répondu à mon problème. Cependant je ne pense pas qu'enlever les accolades soit une bonne idée
puisque elles font parti de la syntaxe d'une boucle avec do. En fait mon problème vient du fait que lorsque un id est absent de la base de données je souhaite relancer la boucle pour aller voir si l'id suivant existe. D'où la condition while (!isset($var)).Ce qui pose problème c'est l'interprétation de la variable $var quand donnees['id']
n'existe pas.