par
Ryle » 25 mai 2008, 10:49
en complément de la remarque de
d0m :
$sql= "SELECT mdp FROM membre1 WHERE `pseudo` LIKE '$pseudo' AND `e_mail` LIKE '$e_mail'";
Quand tu fais une comparaison SQL entre deux valeurs, utilise le signe égal. Le LIKE n'est utilisé que pour une ressemblance entre 2 chaines. Voir
les bonnes pratiques SQL dans la FAQ.
$req = mysql_query($sql)) or die ("Requête incorrecte");
Pas de "." (opérateur de concaténation) entre les deux, comme indiqué par d0m
$resultat = mysql_numrows($sql);
La fonction mysql_numrows() n'existe pas. Tu as au choix mysql_num_rows() ou msql_numrows() selon la base de données que tu utilises. Voir la
documentation des fonctions de php
while($resultat = mysql_fetch_array($req)){
Fais attention, tu utilises la variable $resultat pour connaitre le nombre d'enregistrements retournés par ta requête, et tu la réutilises ici pour lui affecter chaque enregistrement. Si ca ne pose pas de problème particulier, ca peut être source de confusion.
while($resultat = mysql_fetch_array($req)){
//ton traitement
//à la fin du traitement la boucle passe d'elle-même
//à l'enregistrement suivant s'il y en a plusieurs
<td><?php echo $resultat["mdp"]; ?></td>
}
Les balises <td> correspondent à du code html. Assures-toi d'avoir bien fermé les balises php avant de les utiliser, de même, pense à les rouvrir lorsque tu reviens sur du code php
<?php
while ($resultat = mysql_fetch_array($req)) {
//ton traitement
//à la fin du traitement la boucle passe d'elle-même
//à l'enregistrement suivant s'il y en a plusieurs
?>
<td><?php echo $resultat["mdp"]; ?></td>
<?php
}
?>