[PHP]Problème de boucle

Fermé
nasbe Messages postés 30 Date d'inscription mardi 11 septembre 2007 Statut Membre Dernière intervention 11 juin 2008 - 11 juin 2008 à 15:30
 doudi - 11 juin 2008 à 17:13
Salut j'ai un problème avec la boucle suivante il m'affiche le résultat suivant

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource on line 29.

En plus de cela il ne m'affiche pas les echo de mes requetes, par contre il recupere bien la variable mail de mon formulaire, si quelqu'un aurait une idée?



if (isset($_POST['mail']))
   $mail = $_POST['mail'];
else
  $mail = null;


 if(!empty($mail))
{ 


$RequetePseudoPassword = mysql_query ("SELECT Pseudo, Password FROM `personne` WHERE Email='$mail'");
$Resultat = mysql_query($RequetePseudoPassword);
echo "$Resultat";


	while ($TableauNomPassword = mysql_fetch_array($Resultat)){
	$NomPersonne = $TableauNomPassword['NomPersonne'];
	$Password= $TableauNomPassword['Password'];
	}
A voir également:

3 réponses

Bonjour,

echo "$Resultat"; ne revoie qu'une ressource et non la requête.

$sql = SELECT Pseudo, Password FROM `personne` WHERE Email='$mail'";
$Resultat = mysql_query($sql);

echo $sql;
0
nasbe Messages postés 30 Date d'inscription mardi 11 septembre 2007 Statut Membre Dernière intervention 11 juin 2008
11 juin 2008 à 16:18
Salut, c'est exactement ce qu'il me fallait.

Maintenant j'aimerai qu'il m'affiche
echo "Ton adresse mail n'est pas valide"; si elle ne l'ai pas, hors dans mon cas, il rentre quand même dans la boucle while

Je dois faire des erreurs dans mes tests.

{  
$mail = $_POST['mail']; 


$RequetePseudoPassword =("SELECT Pseudo, Password FROM personne WHERE Email='$mail'") or die(mysql_error()); 
$Resultat = mysql_query($RequetePseudoPassword);
if($Resultat){

	while ($TableauNomPassword = mysql_fetch_array($Resultat)){
	$PseudoPersonne = $TableauNomPassword['Pseudo'];
	$Password= $TableauNomPassword['Password'];
	}
		echo "<b>Vous allez recevoir un email qui vous redonnera votre mot de passe et votre pseudo</b>";
		$message = "ton pseudo est ".$PseudoPersonne." et ton mot de passe est ".$Password;
		mail($mail,'Identification',$message);

	} else {
	echo "Ton adresse mail n'est pas valide";
	}
}
else  
{ 
0
Bonjour,

1ère chose : je ne pense pas qu'il soit nécessaire que ta requête boucle car tu ne retournes qu'une seule ligne.

2ème chose : je pense que même si la requête ne revoie rien elle revoie une ressource (pas sur a 100%)

donc fais ça plutot

$RequetePseudoPassword =("SELECT Pseudo, Password FROM personne WHERE Email='$mail'") or die(mysql_error());
$Resultat = mysql_query($RequetePseudoPassword);

$TableauNomPassword = mysql_fetch_array($Resultat)

if(empty($TableauNomPassword)){
si le mail n'est pas trouvé
}
0