> Tous les forumsForum des Webmasters

 SELECT dans BD sans résultatSujet résolu
Statut du sujet : RESOLU Imprimer
 ivan54
  Posté le 05/12/2007 @ 16:56  
 Petit astucien

221 Messages

Bonjour à tous

j'utilise Easyphp 1.6.0.0

j'ai une BD avec deux tables(password et pers_autorise)

la connexion à ma BD est faire par

$db = mysql_connect('localhost', 'root', '');
mysql_select_db('ma_bd',$db)

ensuite je fais la requete suivante

$sql = "SELECT P.pass,P.log,PA.matricule FROM password P , pers_autorise PA WHERE P.matricule=PA.matricule AND P.Pass='$pass'AND P.log='$log'";

avec

$req = mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
$res=mysql_num_rows($req);
echo"$res";

mais le résultat de la selection m'affiche($res= 0)

ce qui ne devrait pas être possible puisque j'ai dans chacune de mes deux tables une occurence avec le meme numéro de matricule

A force d'être dans le code il y a surement une petite erreur qui s'est glissé et qui empeche la séléction de se faire normalement.

Merci de m'aider à résoudre le problème

 Afficher le profil de ivan54Envoyer un message privé à ivan54
 
 
Publicité
 cekica  Posté le 05/12/2007 à 17:38  
Petit astucien

492 Messages

Peut être parce que lorsque tu declare une connexion dans une variable, il faut indiquer le le nom de la variable lors de la requte

mysql_query($sql,$db);

Afficher le profil de cekicaEnvoyer un message privé à cekica
  Revenir en haut de la page
 ivan54  Posté le 05/12/2007 à 20:05  
Petit astucien

221 Messages

Bon ben finalement j'ai trouvé le problème qui était lié à mon système de cryptage du mot de passe.

j'utilisais gzcompress.

Je me suis mis au md5 qui est plus sur et sans problème.

---------------------------------------------

Désormais j'ai le message d'erreur suivant

Cannot send session cache limiter - headers already sent (output started at c:\program files\easyphp\www\parent_connected.php:8) in c:\

après avoir mis ce code dans la condition if

session_start();
$id_de_session = session_id();
$nom_session = session_name();
session_register("pass");
session_register("log");

Merci



Modifié par ivan54 le 05/12/2007 21:50
Afficher le profil de ivan54Envoyer un message privé à ivan54
 Revenir en haut de la page
 ivan54  Posté le 06/12/2007 à 15:18  
Petit astucien

221 Messages

Quelqu'un peut il m'aider???

Merci

Afficher le profil de ivan54Envoyer un message privé à ivan54
 Revenir en haut de la page
 niz  Posté le 07/12/2007 à 13:28  
Petit astucien

48 Messages
Moi parcontre je n'arrive même pas à établir de lien entre easyphp et mysql!!!!
Afficher le profil de nizEnvoyer un message privé à niz
 Revenir en haut de la page
 Malcolm  Posté le 08/12/2007 à 16:12  
  Astucien


7309 Messages

Cekika > Pas besoin de spécifier le pointeur dans mysql_query, ça dépend comment tu ouvres ta connexion.

ivan54> md5 n'est pas un cryptage, mais un hashage. Il n'est pas significativement plus "sécurisé" qu'un réel cryptage.

headers already sent = tu utilises une fonction PHP de type "header" alors que tu as du code HTML envoyé avant : cela peut être du texte, ou un retour à la lligne en trop avant le <?php

Afficher le profil de Malcolm Voir la configuration de MalcolmEnvoyer un message privé à Malcolm
  Revenir en haut de la page
 ivan54  Posté le 15/12/2007 à 18:19  
Petit astucien

221 Messages
Merci malcolm. j'ai appris que le hashage était irréversible contrairement au cryptage raison pour laquelle je me suis dit que c'était plus sécure
Afficher le profil de ivan54Envoyer un message privé à ivan54
 Revenir en haut de la page
 Malcolm  Posté le 16/12/2007 à 11:54  
  Astucien


7309 Messages

Pas forcément ...

Un hashage est un algorithme qui part d'une suite de caractères (typiquement un mot de passe pour cet exemple) et qui en sort une autre suite de caractères (le "hash"). Mais dans l'absolu, rien ne dit qu'un autre mot initial aura le même hash ... Pour des mots initiaux *relativement* simples, la probabilité n'est pas nulle.

D'ailleurs la façon la plus directe d'attaquer un hashage est le brute force (on teste tous les mots, on les hashe et on compare à la version hashée) et certains Dictionnaires de brute force sont inteligents, parce qu'ils gèrent les doublons : ls savent que "alpha" et "beta" résultent dans le même hashage et ne testent que l'un des 2.

Afficher le profil de Malcolm Voir la configuration de MalcolmEnvoyer un message privé à Malcolm
  Revenir en haut de la page
Haut de la page 
Inscrivez-vous !
- Posez vos questions

- Résolvez vos problèmes

- Aidez les autres

- Participez et créez vos discussions

- Dialoguez en privé avec d'autres membres

- Suivez vos sujets préférés

- Affichez les signatures des membres

TOUT EST GRATUIT !

Je crée mon compte



Vous avez besoin d'aide ?
Des centaines d'experts sont à votre disposition sur les forums PC Astuces pour vous aider gratuitement, 24h/24, 7j/7.

Les derniers sujets résolus !
 

 > Tous les forumsForum des Webmasters

 
Forum PC Astuces© 1997-2008 WebastucesAller en haut de la page