Accueil Forum Tutoriaux Contactez nous
Aidoforum.com  •  Forum  •  Chat  •  Annuaire  •  Demander de l'aide  •  Tutoriaux  •  Rechercher  •  Lexique informatique  •  Traducteur SMS


Il y a actuellement 304 tutoriaux sur Aidoforum. Toute reproduction, partielle ou complète, est interdite.

Retour aux tutoriaux.

Ajoutez vos propres tutoriaux sur Aidoforum !
PhpBB -> Utilisation des sessions phpBB sur son site


Utilisation des sessions phpBB


Vous voulez ajouter un espace membre sur votre site mais vous avez déjà un forum phpBB, et vous ne voulez pas avoir 2 espaces membres différents?
Ce tutorial vous permettra de concilier site ET forum phpBB.


Les sessions:
Introduisez ce code dans chaque page sur laquelle vous utiliserez les sessions phpBB:

<?php
define('IN_PHPBB', true);
$phpbb_root_path = './';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);

//
// Start session management
//
$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);
//
// End session management
//
?>


$phpbb_root_path = './'; définit le chemin du forum phpBB
si votre page se situe à la racine de votre site,et que votre forum est dans le dossier forum,votre code sera le suivant:
$phpbb_root_path = 'forum/';
pour cibler le dossier parent,le chemin sera $phpbb_root_path = '../';

Faites attention à le placer avant tout autre code

Bon:

<?
define('IN_PHPBB', true);
$phpbb_root_path = 'forum/';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);

//
// Start session management
//
$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);
//
// End session management
//

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
//en-tête
</head>
<body>
//code HTML
</body>
</html>



Pas bon:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<?
define('IN_PHPBB', true);
$phpbb_root_path = 'forum/';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);

//
// Start session management
//
$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);
//
// End session management
//

?>
<html>
<head>
//en-tête
</head>
<body>
//code HTML
</body>
</html>



surtout pas:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
//en-tête
<?
define('IN_PHPBB', true);
$phpbb_root_path = 'forum/';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);

//
// Start session management
//
$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);
//
// End session management
//

?>
</head>
<body>
//code HTML
</body>
</html>



Une fois ce code installé,vous pouvez inclure le code de vérification utilisateur connecté/déconnecté:


<?php
if( $userdata['session_logged_in'] )
{
// Si l'utilisateur est connecté
echo "Ici, toute information, page ou autre, lorsque l'utilisateur est connecté ";
}
else
{
// Sinon, page des utilisateurs non connectés

echo('<form action="forum/login.php" method="post">
<div align="center">
Login: <input type="text" name="username"><br />
Password: <input type="password" name="password"><br />
Connexion automatique: <input type="checkbox" name="autologin" /><br />
<input type="submit" value="login" name="login">
</form>');
}
?>



L'URL forum/login.php est relative au dossier courant,celui où se situe votre page contenant le formulaire.

Pour créer un lien de déconnexion, penser à écrire:

<a href="forum/login.php?logout=true&amp;sid=<?php echo $userdata['session_id']; ?>">D&amp;eacute;connexion</a>


n'utilisez que des liens absolus dans phpBB et son système de session, ça vous évitera de tomber sur des erreurs bizarres

Vous pourrez ensuite utiliser les variables de l'utilisateur. Pour les connaître toutes, il vous suffit de vous rendre dans votre base de données, et de regarder le champ phpbb_user. Voici quelques données utiles :


$userdata['username'] // Pseudo de la personne connectée
$userdata['user_email'] // Email de la personne connectée
$userdata['user_posts'] // Nombre de posts total de la personne connectée
$userdata['user_rank'] // Nombre correspondant à l'id du rang de la personne connectée
$userdata['user_level'] // Niveau de permissions de la personne connectée: 1 pour Administrateur, 2 pour Modérateur, 0 pour Membre



pour trouver l'id correspondant à un rang, rendez vous dans la table phpbb_ranks
pour afficher le rang,il faut faire une requête sql en plus


Voilà! avec ça,vous devriez réussir facilement à créer votre espace membre !

Par ju2cho7, le 14 Janvier 2006 à 16h06


Commentaire de cobix25 le 15 Janvier 2006 à 10h22

Ton tutoriel va beaucoup servir à mon avis


Commentaire de Pouzy le 15 Janvier 2006 à 16h30

J'ai rajouté quelques petites infos Cligne oeil


Commentaire de ju2cho7 le 17 Janvier 2006 à 19h16

merci Pouzy,ça va me servir tes infos Content


Commentaire de Orangeloulou le 22 Février 2006 à 23h31

Merci beaucoup,je cherchais ça depuis longtemps Content


Commentaire de Erzi le 13 Avril 2006 à 11h35

C'est très bien qu'il existe un code comme celui-ci, mais j'ai essayé en local et quand je me connecte au travers du formulaire du code mis sur mon site, je me retrouve sur le forum... mais je n'y suis pas connectée.


Commentaire de $c0ubid0u le 10 Juin 2006 à 16h34

Pareil que Erzi, quand je me connecte a partir du formulaire sa me mais sur le forum Triste


Commentaire de Pouzy le 11 Juin 2006 à 18h31

Oui, il y a un tuto pour changer la page de destination de la conexion ( par ju2cho7 )


Commentaire de Orangeloulou le 13 Juin 2006 à 18h56

Bonjour,

si vous souhaitez plus d'informations sur les sessions phpBB, voici un bon site : www.orni.info



Orange ^^


Commentaire de ju2cho7 le 16 Juillet 2006 à 08h46

j'ai modifié une petite info à la fin,le user_rank est maintenant un nombre




/!\ Vous devez être inscrit pour pouvoir commenter ce tutoriel, ou demander du support. /!\
Soutenez Aidoforum
Ordinateur portable - Réduction informatique - Créer son site - Entraide Informatique - The Site Oueb - Photoshop - Pc Dossier - The Gimp - Informatruc - Templarts : kits graphiques - Annuaire photoshop - Voyage en Chine - Tout Pour Le PC - Webmaster - Communauté informatique - Smtechnologie - Sospc-en-ligne - Action-PC - Annuaire - AC-Astuces - Services - PC-Dimension - Portail Php - Astuces Windows - fond ecran et photo - Hotel video - Actualité informatique - Séjours - Forum de Science - Devenir Webmaster - Liens - Plan du site