logo Homepage
Pages: 1 2 [3] 4 5 6
  Imprimer  
Auteur Fil de discussion: [PHP] Création d'un espace membre (question et aide)  (Lu 35471 fois)
Perfect Slayer

Profil challenge

Classement : 3028/54284

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 1974


Voir le profil WWW
« #30 le: 11 Août 2005 à 14:18:53 »

Je crois pas qu'il soit pres à ce qu'on lui montre le mécanisme de session ou meme de cookie. (rien que l'idée de headers je sais pas si ca va bien passer...)

Sinon, pourquoi tu te sers pas de l'ID de ta table SQL ? (le clé primaire de l'enregistrement ?)
Journalisée

Newbie Contest Staff :
(¯`·._.· [ Perfect Slayer ] ·._.·´¯)
Status :
Administrateur / Programmeur PHP / Optimisateur
Citation :
Sécurité, efficacité et rapidité riment avec Perfect(ion)
comtezero

Profil challenge

Classement : 2119/54284

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 1001


Voir le profil WWW
« #31 le: 11 Août 2005 à 17:41:10 »

Citation
Sinon, pourquoi tu te sers pas de l'ID de ta table SQL ? (le clé primaire de l'enregistrement ?)
A quoi ca sert faut bien une authentification avec mot de passe , si dans le cookie aprés
y a qu'une ID c'est plus facile a le créér avec hkit qu'un mot de passe et login existant ?
Journalisée

·´¯`·­»Comtezero«­·´¯`·

http://www.masstek.org
Perfect Slayer

Profil challenge

Classement : 3028/54284

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 1974


Voir le profil WWW
« #32 le: 11 Août 2005 à 19:07:48 »

l'ID sert juste à savoir de quel membre il s'agit.. Pas s'il est connecté. Et tu ne stoques pas de password dans un cookie ! (tres dangereux ! C'est déjà pas top pour le pseudo..)

PS : en plus, l'ID de la table permet de faire des liaisons entre différentes tables pour un meme membre...
Journalisée

Newbie Contest Staff :
(¯`·._.· [ Perfect Slayer ] ·._.·´¯)
Status :
Administrateur / Programmeur PHP / Optimisateur
Citation :
Sécurité, efficacité et rapidité riment avec Perfect(ion)
comtezero

Profil challenge

Classement : 2119/54284

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 1001


Voir le profil WWW
« #33 le: 11 Août 2005 à 19:14:35 »

**No slang** que ca me gave :
Citation
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /var/www/free.fr/2/b/zone2test/connexion.php on line 16
Je refais un script dans tout les cas le coco m'affiche une belle page blanche ( ca me fait une belle jambe ) soit je modifie et la il me pond cette erreur .
Journalisée

·´¯`·­»Comtezero«­·´¯`·

http://www.masstek.org
Bricou
Profil challenge

Classement : 9139/54284

Membre Junior
**
Hors ligne Hors ligne
Messages: 96


Voir le profil
« #34 le: 11 Août 2005 à 19:32:00 »

Comtezero, ta requete sql n'est pas bonne, rajout un or die("machin" . mysql_error()); apres ta requete. Tu dois utiliser une mauvaise table ou quelque chose comme ca.

Perfect Slayer, on ne parle pas de l'id créé lors de l'inscription d'un membre, mais d'un id créé a chaque session du membre.
Un id unique par membre qui lui sert d'identification par rapport au site.
C'est ce que contient le cookie PHPSESSID du site de NC.
Journalisée
comtezero

Profil challenge

Classement : 2119/54284

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 1001


Voir le profil WWW
« #35 le: 11 Août 2005 à 20:05:16 »

j'ai beau rajouté le sql error , les variables sont bonnes , mais j'ai toujours une belle page blanche alors que je devrais avoir un message .


Edit : rhhaa ca avance un peu je n'utilise pas les http_post car dans mon bouquin il explique pas et sur internet je n'ai rien trouvé de convinquant , j'essayerai un peu plus tard comme meme , la je suis maintenant dans le meme cas d'avant ou meme avec le bon login/pass ca m'accepte pas ( c pour ca que je ne comprenais pas le num_rows ).

Il retourne toujours 0
Cela ne pourrait il pas venir de la concatenation ?
Journalisée

·´¯`·­»Comtezero«­·´¯`·

http://www.masstek.org
Bricou
Profil challenge

Classement : 9139/54284

Membre Junior
**
Hors ligne Hors ligne
Messages: 96


Voir le profil
« #36 le: 11 Août 2005 à 20:51:27 »

http://php.benscom.com/manual/fr/language.variables.external.php pour $_post et $_get

Sinon pour mysql_num_rows, si il te retourne tjrs 0, c'est que peut etre que tu interroges la mauvaise table, ou que tu cherches un champ qui n'existe pas.
Journalisée
Perfect Slayer

Profil challenge

Classement : 3028/54284

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 1974


Voir le profil WWW
« #37 le: 11 Août 2005 à 21:04:24 »

Citation de: Bricou
Un id unique par membre qui lui sert d'identification par rapport au site.
C'est ce que contient le cookie PHPSESSID du site de NC.
Bah j'vois pas l'utiliité de ton code...
le PHPSESSID est généré tout seul...
et un ID unique pour faire un lien avec le site, j'trouve qu'il y a rien de mieux que la clé primaire..
Journalisée

Newbie Contest Staff :
(¯`·._.· [ Perfect Slayer ] ·._.·´¯)
Status :
Administrateur / Programmeur PHP / Optimisateur
Citation :
Sécurité, efficacité et rapidité riment avec Perfect(ion)
comtezero

Profil challenge

Classement : 2119/54284

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 1001


Voir le profil WWW
« #38 le: 12 Août 2005 à 08:50:43 »

Citation
Sinon pour mysql_num_rows, si il te retourne tjrs 0, c'est que peut etre que tu interroges la mauvaise table, ou que tu cherches un champ qui n'existe pas.
Pourtant il existe , il sont dans phpmyadmin , lors de l'inscription il n'y a pas d'erreur , dans la connexion je me connecte a la bonne table avec les bons champs mais ca me renvoie 0 , je fais chercher du coté de la page d'inscriptions .

Non en faite le probleme viens bien de mon script de connexion , je lui dit a certains endroit de me renvoyer les variables login et pass et il me renvoie toujours juste le login comme si il n'y avait pas de pass , cela pourrait peut-etre venir du "AND" .

Quoique ca doit venir de mon script d'inscriptions car apres verification sur phpmyadmin il n'y a personne d'inscrit pourtant avec les test ils devraient ( enfin je devrais ) etre au moins  10 !!!

//test pour voir s'il n'y a pas un champ de vide
if(empty($login_i) OR empty($pass_i) OR empty($email_i))
{
echo 'Vous avez laissez un champ vide ';
echo'<a href="http://site.free.fr/inscriptions.htm" target="_blank">
Inscriptions</a>';
}

//test entre les 2 mots de passe pour qu'ils soient identiques
elseif ($pass_i!=$pass2_i)
{
echo 'vous avez fait une erreur en tapant votre mot de passe';
echo'<a href="http://site.free.fr/inscriptions.htm" >
Inscriptions</a>';
}

//insertion des données dans mysql
else
{
$login = $HTTP_POST_VARS['pseudo_i'];
$pass = $HTTP_POST_VARS['pass_i'];
$pass = $HTTP_POST_VARS['mail_i'];

$db = mysql_connect ( $serveur, $user, $password)OR die ('Erreur de connexion' . mysql_error());
mysql_select_db($basename, $db)OR die ('base inexistance ou non joignable' . mysql_error()) ;
$sql=mysql_query("INSERT INTO membres('id','login','pass','email')VALUES ('','.$login','.$pass','.$email')" . mysql_error());

echo'Félicitations vous etes maintenant inscris en tant que ';
echo'<a href="http://site.free.fr/index.htm" >
Membre</a>';
echo"$login $pass $email";
}
?>

Le code est lourd est surement pas trés bien developpé ( je verrai pour la sécu plus tard ) le probleme c'est que dans tout les cas il renvoie que c'est bon mais ne test pas si il y a des erreurs dans mon script je n'en voit pas .
Journalisée

·´¯`·­»Comtezero«­·´¯`·

http://www.masstek.org
Perfect Slayer

Profil challenge

Classement : 3028/54284

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 1974


Voir le profil WWW
« #39 le: 12 Août 2005 à 11:04:27 »

SI tu veux, envoie moi tout tes fichier (2 normalement ?) sur mon mail. Je vais tester ca pour te dire ce qui va pas (parce que ca va finir par te dégouter). ++
Journalisée

Newbie Contest Staff :
(¯`·._.· [ Perfect Slayer ] ·._.·´¯)
Status :
Administrateur / Programmeur PHP / Optimisateur
Citation :
Sécurité, efficacité et rapidité riment avec Perfect(ion)
Bricou
Profil challenge

Classement : 9139/54284

Membre Junior
**
Hors ligne Hors ligne
Messages: 96


Voir le profil
« #40 le: 12 Août 2005 à 11:29:20 »

Code:
$login = $HTTP_POST_VARS['pseudo_i'];
$pass = $HTTP_POST_VARS['pass_i'];
$pass = $HTTP_POST_VARS['mail_i'];
utilise $login = $_POST["pseudo_i"]; si tu travailles sur PHP4

Et il y a un petit probleme d'ordre dans ton code. Qd ton script fait les test sur $login et autre, ces variables sont vides. Ton script leur attribu une valeur qu'apres le else...
Journalisée
comtezero

Profil challenge

Classement : 2119/54284

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 1001


Voir le profil WWW
« #41 le: 12 Août 2005 à 16:23:27 »

Citation de: Perfect Slayer
SI tu veux, envoie moi tout tes fichier (2 normalement ?) sur mon mail. Je vais tester ca pour te dire ce qui va pas (parce que ca va finir par te dégouter). ++
Je te l'ai envoyé  .
merci
Journalisée

·´¯`·­»Comtezero«­·´¯`·

http://www.masstek.org
Perfect Slayer

Profil challenge

Classement : 3028/54284

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 1974


Voir le profil WWW
« #42 le: 12 Août 2005 à 20:37:40 »

J't'ai renvoyé ca. Tout juste avant que je sorte !! Allez maintenant la nuit et à moi !!
Journalisée

Newbie Contest Staff :
(¯`·._.· [ Perfect Slayer ] ·._.·´¯)
Status :
Administrateur / Programmeur PHP / Optimisateur
Citation :
Sécurité, efficacité et rapidité riment avec Perfect(ion)
comtezero

Profil challenge

Classement : 2119/54284

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 1001


Voir le profil WWW
« #43 le: 13 Août 2005 à 10:57:46 »

je te remercie pour ce que tu as fait , maintenant je vais aller comparer ce que j'avais fait et tes modifications pour comprendre ce qui n'allait pas dans ce que je faisais . Merci pour la rapidité et merci pour m'avoir aidé .
Journalisée

·´¯`·­»Comtezero«­·´¯`·

http://www.masstek.org
comtezero

Profil challenge

Classement : 2119/54284

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 1001


Voir le profil WWW
« #44 le: 16 Août 2005 à 10:22:11 »

vaut mieux utiliser le mécnisme des sessions ou des cookies ?
Journalisée

·´¯`·­»Comtezero«­·´¯`·

http://www.masstek.org
Pages: 1 2 [3] 4 5 6
  Imprimer  
 
Aller à: