par
Clicky » 15 juin 2009, 14:43
Pour l'enregistrement du mdp dans la bdd, je procède de manière classique en fait :
<?php
mysql_query("
INSERT INTO site_membres (membre_id, membre_ip, membre_host, membre_pseudo, membre_email, membre_mdp,
membre_sexe, membre_localisation, membre_msn, membre_site_web, membre_signature,
membre_jour_naiss, membre_mois_naiss, membre_annee_naiss, membre_hobby,
membre_date_inscrit, membre_derniere_visite)
VALUES ('".intval($id_aleat)."', '".$membre_ip."', '".$host."', '".$pseudo."', '".$email."' , '".$mdp."', '".$sexe."',
'".$localisation."' , '".$msn."', '".$site_web."', '".$signature."', '".$jour_naiss."',
'".$mois_naiss."', '".$annee_naiss."', '".$hobby."', '".$temps."' , '".$temps."') ")
or die ("Erreur sql insert into ".mysql_error());
?>
Mais une fois connectée, je ne reviens jamais sur cette page, de même pour les autres requêtes qui y sont et qui touchent à ma table de membres, elles ne s'exécutent pas si je n'y vais pas. Je pense que si c'est un problème de requête qui se fait mal, c'est peut-être dans un fichier inclus à toutes les pages mais là encore, le problème se produirait à chaque page visitée, et pas que de temps en temps à la visite d'une page quelconque. (Puis, je ne vais pas vous montrer toutes les requêtes de mon site, y en a beaucoup trop.)
Et surtout, ça ne se produit que sur mon hashage (j'ai deux autres inscriptions de test), vu qu'il n'y a toujours que moi qui suit connectée (le site est toujours en période de test, en local comme en ligne), personne d'autre n'y a accès.
C'est comme si quelqu'un ou quelque chose avait accès à mes phpmyadmin (local et en ligne) et me changeait mon hashage uniquement. Ce qui me fait penser que ça viendrait peut-être d'un problème au niveau des sessions.
En haut de toutes mes pages, pour l'instant j'ai ceci :
<?php
session_cache_limiter('private');
session_start();
?>
et je compte mettre private_no_expire à la place de private.
Merci, bonne journée de même

.
Edit : Bon en fait, je crois avoir résolu le problème qui venait de la requête qui modifie les infos du profil. Dans le traitement, j'ai un système qui détecte s'il y a eu changement de mot de passe ou non, mais la requête qui modifiait toutes les infos, modifiait aussi le mdp, même s'il n'était pas modifié par le membre (donc le champ étant resté vide). Du coup, le hashage se faisait sur une chaine vide, d'où le hashe de remplacement qui était tout le temps le même... Je l'ai reconnu en faisant des tests à part.
Donc, dans mon système de détection de mdp, j'ai ajouter une condition dans laquelle j'ai une variable qui contient la requête avec l'update du mdp s'il n'est pas vide, et dans le cas où il est vide, j'ai cette même variable qui contient la même requête mais sans l'update du mdp.
J'ai donc mis cette variable dans mysql_query() et hop, magie, mon mdp n'est plus changé quand je ne le modifie pas dans le formulaire !
Je n'ai donc pas eu besoin de vérifier toutes mes requêtes

, j'avais déjà quelques doutes concernant cette requête et ce n'était pas du tout à cause de mise à jour de fichiers finalement

.
En tout cas, merci de vous être penché sur mon problème

.
Pour l'enregistrement du mdp dans la bdd, je procède de manière classique en fait :
[php]<?php
mysql_query("
INSERT INTO site_membres (membre_id, membre_ip, membre_host, membre_pseudo, membre_email, membre_mdp,
membre_sexe, membre_localisation, membre_msn, membre_site_web, membre_signature,
membre_jour_naiss, membre_mois_naiss, membre_annee_naiss, membre_hobby,
membre_date_inscrit, membre_derniere_visite)
VALUES ('".intval($id_aleat)."', '".$membre_ip."', '".$host."', '".$pseudo."', '".$email."' , '".$mdp."', '".$sexe."',
'".$localisation."' , '".$msn."', '".$site_web."', '".$signature."', '".$jour_naiss."',
'".$mois_naiss."', '".$annee_naiss."', '".$hobby."', '".$temps."' , '".$temps."') ")
or die ("Erreur sql insert into ".mysql_error());
?>[/php]
Mais une fois connectée, je ne reviens jamais sur cette page, de même pour les autres requêtes qui y sont et qui touchent à ma table de membres, elles ne s'exécutent pas si je n'y vais pas. Je pense que si c'est un problème de requête qui se fait mal, c'est peut-être dans un fichier inclus à toutes les pages mais là encore, le problème se produirait à chaque page visitée, et pas que de temps en temps à la visite d'une page quelconque. (Puis, je ne vais pas vous montrer toutes les requêtes de mon site, y en a beaucoup trop.)
Et surtout, ça ne se produit que sur mon hashage (j'ai deux autres inscriptions de test), vu qu'il n'y a toujours que moi qui suit connectée (le site est toujours en période de test, en local comme en ligne), personne d'autre n'y a accès.
C'est comme si quelqu'un ou quelque chose avait accès à mes phpmyadmin (local et en ligne) et me changeait mon hashage uniquement. Ce qui me fait penser que ça viendrait peut-être d'un problème au niveau des sessions.
En haut de toutes mes pages, pour l'instant j'ai ceci :
[php]<?php
session_cache_limiter('private');
session_start();
?>[/php]
et je compte mettre private_no_expire à la place de private.
Merci, bonne journée de même :) .
[color=blue][b]Edit[/b][/color] : Bon en fait, je crois avoir résolu le problème qui venait de la requête qui modifie les infos du profil. Dans le traitement, j'ai un système qui détecte s'il y a eu changement de mot de passe ou non, mais la requête qui modifiait toutes les infos, modifiait aussi le mdp, même s'il n'était pas modifié par le membre (donc le champ étant resté vide). Du coup, le hashage se faisait sur une chaine vide, d'où le hashe de remplacement qui était tout le temps le même... Je l'ai reconnu en faisant des tests à part.
Donc, dans mon système de détection de mdp, j'ai ajouter une condition dans laquelle j'ai une variable qui contient la requête avec l'update du mdp s'il n'est pas vide, et dans le cas où il est vide, j'ai cette même variable qui contient la même requête mais sans l'update du mdp.
J'ai donc mis cette variable dans mysql_query() et hop, magie, mon mdp n'est plus changé quand je ne le modifie pas dans le formulaire !
Je n'ai donc pas eu besoin de vérifier toutes mes requêtes \:D/ , j'avais déjà quelques doutes concernant cette requête et ce n'était pas du tout à cause de mise à jour de fichiers finalement O:) .
En tout cas, merci de vous être penché sur mon problème ;) .