Comparer une variable a un résultat Mysql

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Comparer une variable a un résultat Mysql

Re: Comparer une variable a un résultat Mysql

par moogli » 12 déc. 2012, 12:37

crée toi un sujet A TOI et ne pollue pas celui ci (qui date d'un an).


Si la condition if échoue il faut que tu vérifie le contenu des variables qui composent la condition (print_r, var_dump utiliser un débogueur).


@+

Re: Comparer une variable a un résultat Mysql

par ahmed1325 » 12 déc. 2012, 12:16

Le problème c qu'il ne voit pas la condition if

Re: Comparer une variable a un résultat Mysql

par moogli » 11 déc. 2012, 23:42

bonjour,


Merci d'ouvrir un thread a toi pour que l'on s'y retrouve.



Sans message d'erreur nous ne pouvons t'aider (hors mis la syntaxe).

Si tu n'as pas de message d'erreur vérifie la valeur du paramètre error_reporting dans un phpinfo(); il doit être à E_ALL (modifiable dans un php.ini).


@+

Re: Comparer une variable a un résultat Mysql

par ahmed1325 » 11 déc. 2012, 18:32

c'est quoi le probleme svp
    $sql = "select pseudo,motdepasse from compte " ;
        $requete = mysql_query($sql, $cnx) or die( mysql_error() ) ;
             
                while( $result = mysql_fetch_object( $requete) )
    {	
  
      
		
		  if	($result->pseudo=='admin' )
 {
	echo("heloooooooooooooooooooooooooooooooooo");
	?>
  <div id="wrapper">
	<div id="menu-wrapper">
		<div id="menu" class="container">
			<ul>
				<li class="current_page_item"><a href="index.html">Homepage</a></li>
				<li><a href="emplo.html">Employee</a></li>
				<li><a href="chantier.php">Chantier</a></li>
				<li><a href="bemtic.php">Travaux</a></li>
			
				<li><a href="#">Nouvel utilisateur</a></li>
			</ul>
		</div>
	</div>
	<div id="logo" class="container">
		<IMG SRC="images/img01.jpg"

 TITLE="Texte à afficher">
	</div>

 <?php 
 }}?>

Re: Comparer une variable a un résultat Mysql

par moogli » 31 janv. 2011, 01:21

de rien !


@+

Re: Comparer une variable a un résultat Mysql

par Meutledaron » 30 janv. 2011, 23:42

Exacte l'erreur venez de
if ($motdepasse === $id)

id retournez le pseudo et non le mot de passe

Jai modifier mes variable pour les passer a la moulinette "mysql_real_escape_string " :D

Merci a vous tous

Re: Comparer une variable a un résultat Mysql

par moogli » 30 janv. 2011, 18:52

while( $result = mysql_fetch_object( $req ) )
{
echo ('PSEUDO OK');
$id = $result->pseudo; //Création de $id1 contenant le pseudo
$id2 = $result->motdepasse; //Création de $id2 contenant le mot de passe
}
mysql_close(); //Fermeture de Mysql
}
if ($motdepasse === $id) { <=== ça c'est pas bon d'après le contenu du while
echo ('MOT DE PASSE OK'); //Si mot de passe OK
}
else {
echo ('PAS BON'); //Si erreur de pseudo ou de mot de passe
}
?>

d’ailleurs le while est inutile puisque le résultat est normalement unique !

donc comme l'indique xTG
1/ requete
2/ mysql_num_rows
3/ si un résultat => mysql_fetch_object
si psa de resultat message d'erreur
4/ vérification du mot de passe.

à la limite tu peux faire la vérification des deux dans la requete SQL.

tu devrais utiliser mysql_real_escape_string pour sécuriser tes requetes !

@+

Re: Comparer une variable a un résultat Mysql

par Meutledaron » 30 janv. 2011, 18:15

J'arrive a passer la première étape a savoir sélectionner l'neregistrement mysql contenant le pseudo.
Je pense que c'est la suite qui dois bugger.

Re: Comparer une variable a un résultat Mysql

par xTG » 30 janv. 2011, 17:49

La fonction mysql_num_rows() te renverra le nombre d'enregistrements retourné par ta requête.
Cela te permettra de vérifier que ta requête renvoie bien quelque chose.

Comparer une variable a un résultat Mysql

par Meutledaron » 30 janv. 2011, 17:20

Salut a tous,

J'ai fais pour mon site une petite page d'échange de bannière, avec la possibilité de se créer un espace spécifique pour les gérer par la suite.

Le problème qui se pose c'est que j'ai un premier fichier : gerer.php avec deux input nom et motdepasse qui me renvoie sur gerer2.php jusque la pas de soucis.

Voici le contenu de la seconde page : gerer2.php
<?php
//Déclaration des variables qui ont été poster
$nom = $_POST['nom'];
$motdepasse = $POST['motdepasse'];

//Vérification si le pseudo n'est pas vide avant d'envoyer la requète mysql
if ($nom!=""){

include ('../connexion.php');
//Requete sql
$requete = "SELECT * FROM banniere WHERE pseudo = '$nom'" ;
$req = mysql_query($requete);
while( $result = mysql_fetch_object( $req ) )
    {
	echo ('PSEUDO OK');
	$id = $result->pseudo; //Création de $id1 contenant le pseudo
	$id2 = $result->motdepasse; //Création de $id2 contenant le mot de passe
	} 
mysql_close(); //Fermeture de Mysql
}
if ($motdepasse === $id) {
echo ('MOT DE PASSE OK'); //Si mot de passe OK
}
else {
echo ('PAS BON'); //Si erreur de pseudo ou de mot de passe
}
?>
Je ne sais pas si l'erreur est au niveau de la variable mysql ou au niveau de la vérification...

Merci par avance