Bonjour, vous attendez de la communauté un support le plus précis et le plus rapide qu'il soit !
ATTENTION !! ceci est l'ancien forum fermé le mardi 16 mars 2010 à 15 heures!
Le nouveau forum de support phpBB3 est visible à cette adresse, mettez à jour vos favoris !
Sachez toutefois que ce forum restera consultable durant une longue période, malgré le fait que tout le contenu ait été restauré dans le nouveau forum.
Sujet du message: prgrammer un login en ajax Posté le: Sam 04 Juil, 2009 9:19 am
Salut,
alors je vais essayer d'expliquer mon cas en etant le plus clair possible !!! c'est pas gagne !!!
Pour un petit module, j''ai une etape ou je voudrais integrer le module de cretaion de compte ou de login en AJAX. Ca c'est pas trop dur j'y suis arrive.
Le probleme que je rencontre maintenant, c'est lors de la creation de compte. J'utilise pour ca le code du fichier modules/Your_Account/public/new_user1.php
Ca c'est ok.
Je verifie, par un appel AJAX, en m'inspirant du code du fichier modules/Your_Account/public/new_confirm1.php et la c'est toujours ok mais c'est apres pour la creation du compte que j'ai un soucis.
j'utilise le code du fichier modules/Your_Account/public/new_finish3.php
$result = "SELECT * FROM `".TABLE_USERS."` WHERE `username`='$username' AND `user_password`='$new_password'";
if ($db->get_num($result) == 1) {
$userinfo = $db->get_row($result);
yacookie($userinfo['user_id'],$userinfo['username'],$userinfo['user_password'],$userinfo['storynum'],$userinfo['umode'],$userinfo['uorder'],$userinfo['thold'],$userinfo['noscore'],$userinfo['ublockon'],$userinfo['theme'],$userinfo['commentmax']);
echo "<meta http-equiv=\"refresh\" content=\"3;url=modules.php?name=".MODULE_NAME."\">";
echo "<div align='center'><strong>".$userinfo['username'].":</strong> "._ACTMSG2."</div>";
}
Mon probleme est donc le suivant car je dois rater une etape. Bien sur comme je suis en AJAX, je ne recharge pas les pages et donc dans le header a l'affichage du site, il y a toujours le identifier vous. Par contre quant je relance mon module; il me vois bien identifier, j'ai la definied('USER_ALLOW') qui est a true.
Par contre quand j'actualise ma page, je suis vu en anonyme dans le header definied('USER_ALLOW') a false mais toujours a true dans mon module !!!!
Je suis toujours clair la ?
Si oui, qu'est ce que j'ai oublie de faire pour que je sois directement identifie apres la creation du compte (sans passer par identifier vous maintenant bien sur)
Une idee ?
merci
--------------------------------- Mini Fiche de philippe_jmh Url de mon site web: www.salsatours.fr Version utilisée: Maximus BS URL Rewriting utilisée Wysiwyg installé FCK Editor Hébergeur: www.infomaniak.ch -*-*-*-*-*-*-*-*-*-*- Générez votre rapport de référencement surwww.pagerank.hebeh.net
Sujet du message: Re: prgrammer un login en ajax Posté le: Mer 08 Juil, 2009 12:06 am
Petit up pour reformuler ma question qui semble ne pas interpeller grand monde !!!
Donc quelle est la marche a suivre pour loguer directement quelqu'un ?
Dans le fichier login de Your_account, il y a le bout de code suivant
Code:
yacookie($setinfo['user_id'], $setinfo['username'], $new_pass, $setinfo['storynum'], $setinfo['umode'], $setinfo['uorder'], $setinfo['thold'], $setinfo['noscore'], $setinfo['ublockon'], $setinfo['theme'], $setinfo['commentmax']);
$GLOBALS['db']->query("DELETE FROM `".TABLE_SESSION."` WHERE `uname`='".GET_IP."' AND guest='1'");
$lastip = GET_IP;
if (strpos($lastip, ', ')) {
$lastips = explode(', ', $lastip);
if($lastips[0] != 'unknown' AND $lastips[0] != 'none' AND $lastips[0] != '127.0.0.1' AND $lastips[0] != '') {
$lastip = $lastips[0];
} else {
$lastip = $lastips[1];
}
$GLOBALS['db']->query("UPDATE `".TABLE_USERS."` SET `last_ip`='$lastip' WHERE `user_id`='".$setinfo['user_id']."'");
$GLOBALS['db']->query("OPTIMIZE TABLE `".TABLE_USERS."` ");
$GLOBALS['db']->query("OPTIMIZE TABLE `".TABLE_SESSION."`");
$GLOBALS['db']->query("OPTIMIZE TABLE `".TABLE_SERVERLOAD."`");
}
puis un redirect
Si je met simplement le bout de code sans le redirect et apres je retourne sur la page d'accueil, je ne suis pas loggue !!
Please, je suis bloque !!!
Merci
--------------------------------- Mini Fiche de philippe_jmh Url de mon site web: www.salsatours.fr Version utilisée: Maximus BS URL Rewriting utilisée Wysiwyg installé FCK Editor Hébergeur: www.infomaniak.ch -*-*-*-*-*-*-*-*-*-*- Générez votre rapport de référencement surwww.pagerank.hebeh.net
Sujet du message: Re: prgrammer un login en ajax Posté le: Mer 08 Juil, 2009 7:13 am
salut
je n'ai fais que parcourir le code, mais es tu sûr du cookie
il te faudrait le contrôler au moment ou tu es vu comme loggué pour voir s'il est conforme
si la session et/ou le cookie ne sont pas valides à la page suivante c'est que très probablement l'un ou les deux ne sont tout simplement pas valide
Sujet du message: Re: prgrammer un login en ajax Posté le: Mer 08 Juil, 2009 9:48 am
Le code que j'ai utilise n'est rien d'autre que celui de Your_Account donc il est normalement ok !!!
Dans le cookie j'avais verifie et ca semble ok par contre c'est la session qui pose peut etre probleme car je ne sais pas ou elle intervient en fait et je ne suis pas sur de l'avoir geree !!!!
--------------------------------- Mini Fiche de philippe_jmh Url de mon site web: www.salsatours.fr Version utilisée: Maximus BS URL Rewriting utilisée Wysiwyg installé FCK Editor Hébergeur: www.infomaniak.ch -*-*-*-*-*-*-*-*-*-*- Générez votre rapport de référencement surwww.pagerank.hebeh.net
Sujet du message: Re: prgrammer un login en ajax Posté le: Mer 08 Juil, 2009 10:32 am
pour envoyer ta requête sur la session, prend la ligne 170 du fichier kernel/utility.php
attention à une chose, en ajax tu as du t'en rendre compte mais les définitions et les variables ne sont pas toujours transmises il te faut donc t'assurer que tes variables existent réellement
le plus simple à ce petit jeu, est de se faire un fopen sur un fichier texte des opérations réalisée par ta requête ajax, comme ceci tu es sûr de ce qu'il se passe en arrière plan
logiquement tu t'identifies en ajax et une fois identifié ta requête devrait reloader le site, si le cookie est bon alors tu y es ( la sessions n'est là qu'en contrôle - savoir qui est ou, quand comment etc , mais ne gène en rien le passage visiteur/utilisateur enregistré )
Sujet du message: Re: prgrammer un login en ajax Posté le: Jeu 09 Juil, 2009 12:45 am
Bon alors j'ai fait plusieurs test et voila les resultats:
j'ai fait affichier la ligne $info = base64_encode("$setuid:$setusername:$setpass:$setstorynum:$setumode:$setuorder:$setthold:$setnoscore:$setublockon:$settheme:$setcommentmax");
Dabord juste le texte et ensuite apres l'encodage et tout se passe bien , tout le monde est la !!!
J'ai fait un petit echo aussi dans la fonction yacookie pour etre sur que le progy allait bien et il y va, pas de soucis de ce cote la.
Par contre apres le yacookie, je fait un print_r($_COOKIE) et la le user n'apparait pas !!! $_COOKIE['user'] ne semble donc pas etre defini !!! D'ou a mon avis le probleme d'identification !!!
J'ai l'impression que le setcookie('user',$info, time()+$tempo) n'est pas execute !!!
Lorsque je recharge la page, je ne suis pas identifie, normal puisqu'il ne voit pas le user mais lorsque je reviens dans mon module et dans la partie verification du membre, il me reconnait comme logue. Si je fais un print_r($_COOKIE) a ce niveau il voit bien le $_COOKIE['user'] et defined['USER_ALLOW'] est bien a, alors que pour l'entete du site il n'existe pas, comme s'il y avait 2 cookies differents !!! pour mon module et 1 pour l'entete !!!
Je n'y comprends plus rien !!!
--------------------------------- Mini Fiche de philippe_jmh Url de mon site web: www.salsatours.fr Version utilisée: Maximus BS URL Rewriting utilisée Wysiwyg installé FCK Editor Hébergeur: www.infomaniak.ch -*-*-*-*-*-*-*-*-*-*- Générez votre rapport de référencement surwww.pagerank.hebeh.net
Vous ne pouvez pas poster de nouveaux sujets dans ce forum Vous ne pouvez pas répondre aux sujets dans ce forum Vous ne pouvez pas éditer vos messages dans ce forum Vous ne pouvez pas supprimer vos messages dans ce forum Vous ne pouvez pas voter dans les sondages de ce forum Vous ne pouvez pas joindre des fichiers Vous ne pouvez pas télécharger des fichiers
Distroy Forums Cache ~ Distroy Sessions ~ Partenaire hébergement professionnel www.hebeh.com, votre hébergement de qualité à bas prix. Retrouvez des informations similaires grâce aux moteurs de recherche suivants:
[ Page générée en 0.0515 sec ] [ Vitesse PHP: 48% - SQL: 52% ] [ Requêtes SQL: 53 ] [ 1511 pages vues la dernière heure ]