[PHP]Problème de boucle
Résolu
nasbe
-
nasbe -
nasbe -
Salut, je cherche à ajouter dans une table le résultat d'une requête Select, simplement il me rajoute uniquement le premier élément du SELECT et il m'affiche le message d'erreur suivant.
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in d:\nasbe\cours\php\travail diplome\gestion.php on line 135
C'est apparement un problème de boucle, si t'as une solution, elle est la bienvenue.
<?PHP
// Blocage de l'accès à un groupe d'utilisateur
$bd ='gestionacces';
$lien = mysql_pconnect ('localhost', 'root', '');
mysql_select_db($bd);
$table = 'statut';
$table2 = 'appartenance';
//connexion bdd
if ($lien == FALSE){
echo "connexion impossible à la base $bd";
} else {
if (isset ($_POST['bloquageGroupe'])){
if ($lien == FALSE){
echo "connexion impossible à la base $bd";
} else {
$accesGroupe = $_POST['accesGroupe'];
$val3 = $_POST['listeGroupeAcces'];
$bloquer = "bloqué";
if ($accesGroupe == "bloquerGroupe"){
$requeteSelection = "Select NomUtilisateur from $table2 where NomGroupe = '".$val3."'";
$result = mysql_query($requeteSelection)
or die('Requête invalide : ' . mysql_error());
LIGNE 135 : while($resultat = mysql_fetch_array($result))
{
echo '<b>'.$resultat['NomUtilisateur'].' '.'</b>';
$requeteInsertion2 = "INSERT INTO $table";
$requeteInsertion2 .= "(NomUtilisateur, Statut)";
$requeteInsertion2 .= "VALUES";
$requeteInsertion2 .= "(\"".$resultat['NomUtilisateur']."\",\"".$bloquer."\")";
$result = mysql_query($requeteInsertion2)
or die('Requête invalide : ' . mysql_error());
}
}
mysql_query($requeteInsertion2);
mysql_query($requeteSelection);
mysql_close($lien);
}
}
}
?>
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in d:\nasbe\cours\php\travail diplome\gestion.php on line 135
C'est apparement un problème de boucle, si t'as une solution, elle est la bienvenue.
<?PHP
// Blocage de l'accès à un groupe d'utilisateur
$bd ='gestionacces';
$lien = mysql_pconnect ('localhost', 'root', '');
mysql_select_db($bd);
$table = 'statut';
$table2 = 'appartenance';
//connexion bdd
if ($lien == FALSE){
echo "connexion impossible à la base $bd";
} else {
if (isset ($_POST['bloquageGroupe'])){
if ($lien == FALSE){
echo "connexion impossible à la base $bd";
} else {
$accesGroupe = $_POST['accesGroupe'];
$val3 = $_POST['listeGroupeAcces'];
$bloquer = "bloqué";
if ($accesGroupe == "bloquerGroupe"){
$requeteSelection = "Select NomUtilisateur from $table2 where NomGroupe = '".$val3."'";
$result = mysql_query($requeteSelection)
or die('Requête invalide : ' . mysql_error());
LIGNE 135 : while($resultat = mysql_fetch_array($result))
{
echo '<b>'.$resultat['NomUtilisateur'].' '.'</b>';
$requeteInsertion2 = "INSERT INTO $table";
$requeteInsertion2 .= "(NomUtilisateur, Statut)";
$requeteInsertion2 .= "VALUES";
$requeteInsertion2 .= "(\"".$resultat['NomUtilisateur']."\",\"".$bloquer."\")";
$result = mysql_query($requeteInsertion2)
or die('Requête invalide : ' . mysql_error());
}
}
mysql_query($requeteInsertion2);
mysql_query($requeteSelection);
mysql_close($lien);
}
}
}
?>
A voir également:
- [PHP]Problème de boucle
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Php alert ✓ - Forum PHP
- Boucle excel sans macro - Forum Excel
- Mon pc s'allume et s'éteint en boucle ✓ - Forum Matériel & Système
2 réponses
Bonsoir,
LIGNE 135 : while($resultat = mysql_fetch_array($result))
{
echo '<b>'.$resultat['NomUtilisateur'].' '.'</b>';
$requeteInsertion2 = "INSERT INTO $table";
$requeteInsertion2 .= "(NomUtilisateur, Statut)";
$requeteInsertion2 .= "VALUES";
$requeteInsertion2 .= "(\"".$resultat['NomUtilisateur']."\",\"".$bloquer."\")";
$result = mysql_query($requeteInsertion2)
or die('Requête invalide : ' . mysql_error());
}
tu as deux fois $result dont une dans ta boucle while qui fait déja le fetc_array sur $result alors il ne doit pas aimer ça.
mets plutôt
LIGNE 135 : while($resultat = mysql_fetch_array($result))
{
echo '<b>'.$resultat['NomUtilisateur'].' '.'</b>';
$requeteInsertion2 = "INSERT INTO $table";
$requeteInsertion2 .= "(NomUtilisateur, Statut)";
$requeteInsertion2 .= "VALUES";
$requeteInsertion2 .= "(\"".$resultat['NomUtilisateur']."\",\"".$bloquer."\")";
$result = mysql_query($requeteInsertion2)
or die('Requête invalide : ' . mysql_error());
}
tu as deux fois $result dont une dans ta boucle while qui fait déja le fetc_array sur $result alors il ne doit pas aimer ça.
mets plutôt
$result2 = mysql_query($requeteInsertion2)....