[Doc] Utiliser les sessions de phpbb3

Ce forum aborde toutes les questions qu'un codeur ou webmaster pourrait se poser, et n'ayant aucun rapport direct avec phpBB.
Tout ce qui peut concerner la récupération des sessions de phpBB sur votre site, doit se faire dans cette section.

Modérateur: Equipe

Règles du forum
A lire impérativement : Règlement de phpBB-fr.com

Re: [Doc] Utiliser les sessions de phpbb3

Messagepar spitfire pat » 17 Sep 2008 à 19:18

curieux, ton fichier génère chez moi un 'unexpected $end ligne 42' comme s'il manquait qq part un tag de fermeture ?> , mais je n'ai vu nulle part de tag manquant
je n'ai donc pas pu le tester. par contre je ne vois aucune raison pour que la connexion ne marche pas, ni pourquoi l'avertissement header already sent
Avatar de l’utilisateur
spitfire pat
MOD Contest Winner
MOD Contest Winner
 
Messages: 15297
Enregistré le: 18 Sep 2004 à 16:43
Localisation: bourgogne

Re: [Doc] Utiliser les sessions de phpbb3

Messagepar Dakin Quelia » 17 Sep 2008 à 19:24

Cette erreur est aussi provoquée quand il y a une mauvaise modification côté template.
Aucun support par mail, MP ou msn.
Mes MODs: ici | Mon blogue: Mon blogue | DeviantArt: cliquez ici
Dakin Quelia
Floodeur universel
Floodeur universel
 
Messages: 21411
Enregistré le: 31 Oct 2006 à 19:33
Localisation: Belgique

Re: [Doc] Utiliser les sessions de phpbb3

Messagepar spitfire pat » 17 Sep 2008 à 20:28

Dakin Quelia a écrit:Cette erreur est aussi provoquée quand il y a une mauvaise modification côté template.
sauf que là il n'y a pas de template 8)
Avatar de l’utilisateur
spitfire pat
MOD Contest Winner
MOD Contest Winner
 
Messages: 15297
Enregistré le: 18 Sep 2004 à 16:43
Localisation: bourgogne

Re: [Doc] Utiliser les sessions de phpbb3

Messagepar elt93 » 17 Sep 2008 à 20:44

ok, mais y a aucune solutions ? Je comprends pas pk ca marche chez vous et pas chez moi !
elt93
Posteur néophyte
Posteur néophyte
 
Messages: 23
Enregistré le: 29 Juil 2008 à 10:15

Re: [Doc] Utiliser les sessions de phpbb3

Messagepar spitfire pat » 18 Sep 2008 à 07:33

je n'ai jamais dit que ça marchait chez moi, puisque ton script, il plante sur mon site local
et j'ai fini par découvrir pourquoi, c'est à cause de ces lignes:
Code: Tout sélectionner
<?
}
else
{ echo 'Vous devez vous identifier pour accéder à cette page' ;}
?>

php5 n'accepte pas les tags <?, il exige absolument les tags <?php. c'est pour ça que ça ne marchait pas chez moi

bon, sinon, l'avertissement 'Header already sent' ça vient du fait que, avec la fonction $auth->login, une nouvelle session est lancée. il ne faut donc pas que du texte ait déjà étéaffiché.
donc ce bloc de code:
Code: Tout sélectionner
//retour de formulaire
if (isset($_POST['login']))
{
   $username = request_var('username', '', true);
   $password    = request_var('password', '', true);
   $autologin   = (!empty($_POST['autologin'])) ? true : false;
   $viewonline = (!empty($_POST['viewonline'])) ? 0 : 1;
   $admin = 0;
   $result = $auth->login($username, $password, $autologin, $viewonline, $admin);
   if ($result['status'] != LOGIN_SUCCESS)
   {
      $err = $user->lang[$result['error_msg']];
   }
}
tu le déplace après
Code: Tout sélectionner
$user->setup();


enfin je me suis aperçu d'un bug dans le script que je préconise. après le succès de la connexion, $user->data contient tous les paramètres de l'utilisateur connecté, mais l'item 'is_registered' reste vide. donc la nouvelle session s'exécute de façon incomplète et je ne comprend pas pourquoi.
avant que j'en trouve la raison, remplace toutes les occurences de
Code: Tout sélectionner
if($user->data['is_registered'])

par
Code: Tout sélectionner
if ($user->data['user_id'] != ANONYMOUS)
(mais il y a un risque que lors du changement de page, il y ait une perte de connexion)

EDIT en fait c'est bon, après déplacement du bloc de code. il est vraisemblable que du fait de l'affichage, la session s'est arrêtée prématurément. donc tu peux garder
Code: Tout sélectionner
if($user->data['is_registered'])
Avatar de l’utilisateur
spitfire pat
MOD Contest Winner
MOD Contest Winner
 
Messages: 15297
Enregistré le: 18 Sep 2004 à 16:43
Localisation: bourgogne

Re: [Doc] Utiliser les sessions de phpbb3

Messagepar elt93 » 18 Sep 2008 à 20:23

Merci beaucoup pour ton aide, je teste tout ca quand hostarea arretera de bugger et que je pourrais enfin utiliser mon ftp. Je te tiens au courant quand c'est bon.
EDIT
J'ai ca quand j'essaye de me conecter à mon site web via mozilla :
Code: Tout sélectionner
General Error
SQL ERROR [ mysql4 ]

Unknown MySQL server host 'sql' (2) [2005]

An sql error occurred while fetching this page. Please contact an administrator if this problem persists.
(message de phpbb)

Et je n'arrive pas a me connecter a mon ftp. C'est un probleme de l'hebergeur ou je me suis fait hacker ?
elt93
Posteur néophyte
Posteur néophyte
 
Messages: 23
Enregistré le: 29 Juil 2008 à 10:15

Re: [Doc] Utiliser les sessions de phpbb3

Messagepar dleblanc_hq » 19 Sep 2008 à 06:42

Une question comme ca... pouquoi utilisé la session de PHP sur votre site ? pourquoi pas juste vérifier si le mot de passe de votre site est semblable a celui du forum.
Dans la function phpbb_hash($password) j'ai seulement garder la ligne return md5($password); et ca fonctionne tres bien maintenant je compare le mot de passe de mon site que j'encrypte en md5 et celui de forum est maintenant en md5 aussi car je l'ai forcé en masquant tous les autres lignes.
J'ai tester tous les fonctions password recovery, nouveau password tout fonctionne maintenant en md5. La seule chose il faut demandé au usager de recreer le mot de passe et voila!.

:mrgreen:
dleblanc_hq
Posteur néophyte
Posteur néophyte
 
Messages: 17
Enregistré le: 29 Avr 2008 à 18:23

Re: [Doc] Utiliser les sessions de phpbb3

Messagepar spitfire pat » 19 Sep 2008 à 09:43

elt93 revois tes paramètres de connexion à ta base
dleblanc_hq à ton idée, pourquoi les concepteurs de phpBB sont-ils passés d'un mot de passe codé en md5 sous phpBB2 à un mot de passe plus compliqué sous phpBB3 ?
Avatar de l’utilisateur
spitfire pat
MOD Contest Winner
MOD Contest Winner
 
Messages: 15297
Enregistré le: 18 Sep 2004 à 16:43
Localisation: bourgogne

Re: [Doc] Utiliser les sessions de phpbb3

Messagepar elt93 » 19 Sep 2008 à 12:29

C'est bon ca marche, c'etait l'hebergeur qui buggait. Merci beaucoup pour votre aide le code marche genial !
elt93
Posteur néophyte
Posteur néophyte
 
Messages: 23
Enregistré le: 29 Juil 2008 à 10:15

Re: [Doc] Utiliser les sessions de phpbb3

Messagepar dleblanc_hq » 20 Sep 2008 à 04:11

spitfire pat a écrit:elt93 revois tes paramètres de connexion à ta base
dleblanc_hq à ton idée, pourquoi les concepteurs de phpBB sont-ils passés d'un mot de passe codé en md5 sous phpBB2 à un mot de passe plus compliqué sous phpBB3 ?


On se comprend bien que c'est un forum open source. La fonction d'encryptage est bien visible dans le fichier fonction. Je vois pas qu est ce qu'on peut hacker sur un forum a open source ou qu'est ce qui le rend plus sécuritaire quand tu as acces a la méthoge d'encryptage...etk...
dleblanc_hq
Posteur néophyte
Posteur néophyte
 
Messages: 17
Enregistré le: 29 Avr 2008 à 18:23

Re: [Doc] Utiliser les sessions de phpbb3

Messagepar spitfire pat » 20 Sep 2008 à 06:18

dleblanc_hq a écrit:Je vois pas qu est ce qu'on peut hacker sur un forum a open source ou qu'est ce qui le rend plus sécuritaire quand tu as acces a la méthoge d'encryptage...etk...

déjà vu un forum démonté par des hackers qui avaient décrypté le mot de passe de l'admin ?
la méthode d'encryptage de phpBB3 sécurise davantage ton site que le simple md5. donc ce que tu fais est un retour en arrière
Avatar de l’utilisateur
spitfire pat
MOD Contest Winner
MOD Contest Winner
 
Messages: 15297
Enregistré le: 18 Sep 2004 à 16:43
Localisation: bourgogne

Re: [Doc]sessions de phpbb3 SID et chrome

Messagepar burny » 01 Oct 2008 à 21:43

Bonjour tout le monde.

Je viens vers vous car je me bat pour réutiliser les sessions de phpBB3 comme je le faisait avec phpBB2. Tout ce que je cherche à faire c'est sur a page d'accueil vérifier si c'est un membre connecté, son nombre de MP... pour ça je peux encore me débrouiller.

Mon problème viens de google Chrome, même quand je suis sur le forum, si je supprime le SID après l'url, je me retrouve déconnecté, comme si Chrome ne retransmettait pas les données du cookie ! Pour faire le test c'est super simple, j'ouvre le forum (index) je me connecte (l'index apparait avec l'url+le SID), je vire le SID pour garder juste index.php et là pof ! je suis déconnecté.

Celà viens il du paramétrage de chrome ?

Je vous pose cette question car les urls que je génère sur mon site n'ont pas le sid pour faire plus 'propre' à l'affichage, donc avec ce souci pas moyen de conserver la session entre différentes pages.

Merci d'avance pour votre aide !
burny
Posteur néophyte
Posteur néophyte
 
Messages: 39
Enregistré le: 29 Aoû 2004 à 00:08

Re: [Doc]sessions de phpbb3 SID et chrome

Messagepar spitfire pat » 02 Oct 2008 à 04:59

burny a écrit:les urls que je génère sur mon site n'ont pas le sid pour faire plus 'propre' à l'affichage, donc avec ce souci pas moyen de conserver la session entre différentes pages.
eh bien je crains que tu n'aies que le choix entre un affichage propre et la conservation des sessions, il n'y a pas d'autre terme de l'alternative.
Je te rappelle quand même que si les concepteurs de phpbb ont prévu des sessions qui se propagent par cookies OU par sid, c'est parce que des utilisateurs bloquent les cookies et qu'il faut respecter leur choix
Avatar de l’utilisateur
spitfire pat
MOD Contest Winner
MOD Contest Winner
 
Messages: 15297
Enregistré le: 18 Sep 2004 à 16:43
Localisation: bourgogne

Re: [Doc] Utiliser les sessions de phpbb3

Messagepar Bouv » 05 Oct 2008 à 16:13

Bien le bonjour à tous.

J'ai lu tous les post de ce sujet, et aucun ne référence le problème que j'ai. A savoir:

J'ai une page: header.php qui est inclue dans un dossier appelé style, ce fichier contient tout le début de la page, à savoir tout le php qui dois apparaître avant le moindre html, mais aussi le début du html avec le header, la barre de navigation, mais aussi un petit bloc qui contient la zone de connexion (et si la personne est déjà connecté un lien vers la messagerie et autre).
Donc pour adapter la méthode des sessions à mon site, j'ai suivie le tutoriel et tout fonctionne sans problème, sauf quand je veux adapter la page form.php à ma page cité ci-dessus.
Dans le cas ou la personne est déjà connecté aucun problème ne surviens, dans le cas contraire, j'ai ce message d'erreur:
[phpBB Debug] PHP Notice: in file /includes/auth.php on line 853: login(./forum/includes/auth/auth_.php) [function.login]: failed to open stream: No such file or directory
[phpBB Debug] PHP Notice: in file /includes/auth.php on line 853: login() [function.include]: Failed opening './forum/includes/auth/auth_.php' for inclusion (include_path='.:/usr/lib/php')

A ce que je voie dans le fichier includes/auth.php à la ligne 853, la variable $method n'est pas définie. Mais je n'arrive pas à faire en sorte que ça fonctionne.

Voici ce que j'ai essayé, et ça n'a rien changé:
  • Mettre le fichier header.php à la racine du cite
  • Forcer une valeur pour la varibale $method

Merci de votre aide, cordialement, Bouv.
Bouv
Posteur néophyte
Posteur néophyte
 
Messages: 18
Enregistré le: 26 Juin 2008 à 00:14

Re: [Doc] Utiliser les sessions de phpbb3

Messagepar spitfire pat » 05 Oct 2008 à 17:21

Bouv a écrit:A ce que je voie dans le fichier includes/auth.php à la ligne 853, la variable $method n'est pas définie

elle est définie la ligne d'avant:
Code: Tout sélectionner
$method = trim(basename($config['auth_method']));

soit cette ligne est absente et on peut se demander pourquoi...
soit elle est présente et de deux choses l'une: tu as lancé $auth->login sans avoir lancé au préalble une session ou bien c'est ta table phpbb_config qui est corrompue car $config['auth_method'] ne devrait pas être vide si une session a été lancée, normalement l'entrée 'auth_method' se paramètre dans le panneau d'admin onglet général -> communication -> authentification: le premier paramètre, "Sélectionnez une méthode d’authentification" amène à une liste déroulante contenant Apache, Db (par défaut), Ldap
Avatar de l’utilisateur
spitfire pat
MOD Contest Winner
MOD Contest Winner
 
Messages: 15297
Enregistré le: 18 Sep 2004 à 16:43
Localisation: bourgogne

PrécédenteSuivante

Retourner vers Coding, Webmastering et Sécurité informatique

 


  • Articles en relation
    Réponses
    Vues
    Dernier message

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 2 invités