Requete

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 : Requete

par Gilles » 23 sept. 2005, 09:28

résultat nbrow=1

par Maitrepylos » 22 sept. 2005, 16:44

et ceci donne quoi comme résultats
$Query='SELECT count(*) as nbrow
FROM '.$MYSQL_table .'
WHERE '.$TABLE_col2.'=\''.$USER_Pseudo.'\'  GROUP BY  $USER_Pseudo

par gilles » 22 sept. 2005, 16:31

le resultat sort dans les deux cas sans majuscule ...
ma base est hebergée chez Free

par Tho » 22 sept. 2005, 10:49

Je crois que ça dépend du système où est installée la base.
Windows : insensible.
Linux : sensible.

par Maitrepylos » 22 sept. 2005, 10:03

Et le résultat sors avec ou sans majuscule?

par Gilles » 22 sept. 2005, 00:13

Non non je te rassure

par rami » 21 sept. 2005, 22:46

Tu n'as pas 2 utilisateurs différents dont un a le pseudo 'maurice' et l'autre 'Maurice'?

par smarties » 21 sept. 2005, 22:16

Petite information : par convention on utilise des minuscules en 1e lettre pour les variables, la 1e lettre en majuscule pour les classes et que des majuscules pour les constantes :wink:

par gilles » 21 sept. 2005, 22:13

Merci ta réponse, j'ai modifié ma requette en suivant ton conseil, mais cela marche toujours de la même façon.

je me suis donc mis sur la console mysql et j'ai lancé:

Code : Tout sélectionner

SELECT password FROM table WHERE pseudo='Maurice'
et

Code : Tout sélectionner

SELECT password FROM table WHERE pseudo='maurice'
et même résultat dans les deux cas j'ai le même résultat ...

par rami » 21 sept. 2005, 21:50

salut gilles,

Tout d'abord, je ne comprends pas pourquoi tu ne selectionnes pas les lignes dont le pseudo et le password correspondent à ceux saisis. Tu peux réaliser cela en faisant:
$Query='SELECT count(*) as nbrow
FROM '.$MYSQL_table .'
WHERE '.$TABLE_col2.'=\''.$USER_Pseudo.'\' 
AND '.$TABLE_col3.'=\''.md5($USER_Password).'\'';

$Exist=mysql_fetch_array(mysql_query($Query,$link));

if($Exist['nbrow']>0)
{    
// utilisateur existe et le mot de passe est le bon
}

Ensuite, je ne vois pas comment en saisissant "maurice", la requete:

Code : Tout sélectionner

SELECT password FROM table WHERE pseudo='Maurice'
puisse retourner un résultat car mysql est case sensitive pour les valeurs des VARCHAR.

Essaies d'afficher la requete générée pour voir si elle est bien formée.

Je pense que cela vient du fait que tu fais un fetch_array et qu'ensuite tu appelles $Exist[0]...

Requete

par gilles » 21 sept. 2005, 21:36

salut,
j'ai un probléme simple (je débute)

j'ai le programme suivant

USER_Pseudo et $USER_password provient d'avant dans le programme
$Query="SELECT $TABLE_col3 FROM $MYSQL_table WHERE $TABLE_col2 ='$USER_Pseudo'";
$Exist=mysql_fetch_array(mysql_query($Query,$link));

if($Exist[0]==md5($USER_Password))
{	
// utilisateur existe et le mot de passe est le bon
}

$table_col2 contient les nom utilisateur

mon probléme est le suivant

si dans ma table j'ai comme nom utilisateur "maurice"

et que USER_Pseudo est "Maurice" le programme me trouve bien maurice dans la table.....

je souhaite que si le nom utilisateur n'est pas 100% le même c'est a dire majuscule et minuscule respecté la requete ne me retourne pas de resultat. comment faire ?