FluxBB.fr

Le site des utilisateurs francophones de FluxBB.

Vous n'êtes pas identifié(e).

#1 29-06-2012 10:54:27

locobastos
Membre
Inscription : 29-06-2012
Messages : 10
Site Web

[Résolu] Intégration fluxbb sur page PHP d'un site web

Bonjour à tous,

après deux jours de recherche, je comprend que beaucoup s'arrachent les cheveux pour intégrer un forum sur une page de notre site web.
Pour les créateurs des forums, ça vous parait tellement simple. Mais les guides sont assez mal fait. En effet, même si FluxBB doit être un des seul à avoir un guide en Français, il n'est malheureusement pas fait pour les zéros.

Voici l'arborescence de mon site web :

`- /
   +- forums                       // là où est installé fluxbb 1.5.0 et configuré.
   |  +- ...                         // vous connaissez l'arborescence.
   +- includes                     // pour les pages qui sont appelé tout le temps (menu_horizontal, pied_de_page, etc...)
   |  +- ...                         // avec des pages.php
   +- site_images
   |  +- ...
   +- monstyle.css
   +- index.php
   +- forum.php

Voici un screenshot de mon index.php :
index.php

Voici ma page admin.php (juste pour le visuel) :
admin.php

Voici ma page actuelle du forum :
forum.php

Voici ce à quoi je désir que ça ressemble après un vulgaire photomontage :
forum.php

Ce que je désir donc, c'est de pouvoir faire comme si mon "echo-online.org/forum/index.php" s'affichait, non pas dans une autre page, mais dans un <div></div> de la page actuelle forum.php.

Voici le code source de forum.php :

<!DOCTYPE html>
<html>

    <head>
        <meta charset="utf-8" />
        <link rel="stylesheet" href="echo-online.css" />
        <link rel="icon" type="image/x-png" href="site_images/favicon.png" />
        <title>Forum Echo-Online</title>
    </head>

    <body>
        <?php
            include ("protection/fonctions.inc.php"); 
            define('PUN_ROOT', './forums/');
            require PUN_ROOT.'include/common.php';
        ?>
        <div id="pun<pun_page>" class="pun">
        <div id="entete"></div>
        <div>
            <?php include("includes/menu_horizontal.php"); ?>
        </div>
        <div id="content" style= "overflow: hidden;">
            <div class="top-box">
                <div><!-- Top Corners --></div>
             </div>
            <div class="punwrap">
                <div id="brdheader" class="block">
                    <div class="box">
                        <div id="brdtitle" class="inbox">
                            <pun_title>
                            <pun_desc>
                        </div>
                        <pun_navlinks>
                        <pun_status>
                    </div>
                </div>
                <pun_announcement>
                <div id="brdmain">
                    <pun_main>
                </div>
                <div class="end-box">
                    <div><!-- Bottom corners --></div>
                </div>
            </div>
        </div>
        <div id="footerplus"></div>
    </body>
</html>

Le code est bien implémenté, car si je rajoute, par exemple :
Bonjour <?php echo pun_htmlspecialchars($pun_user['username']); ?> !

La page web m'affiche bien le résultat attendu, avec le bon nom d'utilisateur !!!

Il manque juste un petit truc, j'ai absolument besoin de vous !!
Je pense qu'il vous manque des infos pour m'aider, n'hésiter à me les demander.

Je vous remercie d'avance, et désolé d'avoir créer un milliardième topic sur comment intégrer un forum sur son site...

Bastien.

Dernière modification par locobastos (02-07-2012 10:02:01)

Hors ligne

#2 29-06-2012 10:58:59

fanf73
Wik-wiki
Lieu : Lyon
Inscription : 12-09-2006
Messages : 4 432
Site Web

Re : [Résolu] Intégration fluxbb sur page PHP d'un site web

Le truc avec FluxBB c'est qu'on ne peut pas l'intégrer dans un site, il faut modifier ses templates pour y intégrer le design du site.

Je t'invite à regarder cette page qui explique comment intégrer un header particulier : http://fluxbb.fr/aide/doku.php?id=fluxb … te:exemple


Nous ne faisons pas le travail à votre place mais nous prenons le temps de vous montrer le chemin. Merci de lire ce que l'on vous dit et de réfléchir avant de re-demander une explication.

Hors ligne

#3 29-06-2012 11:03:20

locobastos
Membre
Inscription : 29-06-2012
Messages : 10
Site Web

Re : [Résolu] Intégration fluxbb sur page PHP d'un site web

fanf73 a écrit :

Le truc avec FluxBB c'est qu'on ne peut pas l'intégrer dans un site, il faut modifier ses templates pour y intégrer le design du site.

Je t'invite à regarder cette page qui explique comment intégrer un header particulier : http://fluxbb.fr/aide/doku.php?id=fluxb … te:exemple

Intégrer le forum sur le site ou intégrer le style du site sur le forum m'est égal.
Mais est-ce que ça donnerai exactement le même résultat ???
Puis par la suite, il ne suffira plus de modifier seulement le monstyle.css pour que la page du forum change, faudra-t-il aussi changer des paramètre dans les .tpl ?

De plus, je ne désir pas seulement ajouter un entête (=logo), une sidebar (=mon menue horizontal), et un footer, je désir aussi que le .css (image de fond) s'applique à cette page.

Pour ce qui est des modifications visuelles du forum en lui même, je pense trouver des réponses sur internet, là n'est pas le sujet de ce topic.

Merci pour ta réponse si rapide wink

Dernière modification par locobastos (29-06-2012 11:05:13)

Hors ligne

#4 29-06-2012 12:52:56

locobastos
Membre
Inscription : 29-06-2012
Messages : 10
Site Web

Re : [Résolu] Intégration fluxbb sur page PHP d'un site web

Personne ne peut m'aider ???

Bien évidement, je ne désire pas utiliser les iframes...

Hors ligne

#5 29-06-2012 13:17:24

Porcepic
Membre
Inscription : 05-07-2010
Messages : 36

Re : [Résolu] Intégration fluxbb sur page PHP d'un site web

Bonjour,

Tout ceci peut se faire en éditant les .tpl comme expliqué dans la page donnée en lien plus haut.
Ces fichiers ont le mérite d'avoir la structure d'une page HTML classique : tu peux donc ajouter tes éléments aux mêmes endroits que tu le ferais dans un fichier « normal », et tu peux également inclure la feuille de style CSS de ton site comme tu le ferais sur une page « normale » (en ajoutant une ligne avant le </head>).

Le résultat sera globalement le même. Tu peux avoir quelques différences de margin/padding étant donné que dans la feuille de style du forum, tous les margin/padding sont initialement remis à zéro (avant d'être redéfinis manuellement), mais ça restera un petit détail que tu devrais pouvoir corriger sans trop de soucis si tu as déjà réussi à intégrer ton forum dans ton site (ou plutôt intégrer les éléments de son site dans les templates du forum, donc...). Il suffira d'éditer le fichier CSS de ton site.

Une fois l'intégration réussie, si tu décides de changer l'apparence d'un bloc de ton site, il te suffira de modifier le fichier CSS de ton site et ça agira sur ton site et ton forum, sans aucune modification supplémentaire.
En revanche, si tu souhaites ajouter un nouveau bloc, il faudra le faire sur ton site et dans les templates du forum.


Ceci est un virus de signature. Recopiez-le dans votre signature, s'il vous plait.

Hors ligne

#6 29-06-2012 14:59:59

locobastos
Membre
Inscription : 29-06-2012
Messages : 10
Site Web

Re : [Résolu] Intégration fluxbb sur page PHP d'un site web

Porcepic a écrit :

Tout ceci peut se faire en éditant les .tpl comme expliqué dans la page donnée en lien plus haut.
Ces fichiers ont le mérite d'avoir la structure d'une page HTML classique : tu peux donc ajouter tes éléments aux mêmes endroits que tu le ferais dans un fichier « normal », et tu peux également inclure la feuille de style CSS de ton site comme tu le ferais sur une page « normale » (en ajoutant une ligne avant le </head>).

J'ai réussi à intégrer, grace à toi, certain élément en modifiant directement le main.tpl sans m'occuper de header/footer/sidebar.php mais tout ne veux pas s’intégrer.

Est-ce que c'est pas le CSS entier qui est remis à zéro car :

main.tpl :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<pun_language>" lang="<pun_language>" dir="<pun_content_direction>">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<pun_head>
<link rel="icon" type="image/x-png" href="../site_images/favicon.png" />     // J'ai ajouté une icone, ça marche
<link rel="stylesheet" href="../echo-online.css" />                        // J'ai ajouté mon CSS. tout ne marche pas :s
</head>

<body>                                 
<?php include ("../protection/fonctions.inc.php"); ?> 
<div id="entete"></div> // Bizarrement là ça marche, tout est dans mon CSS, et ça à bien marché.
<div><?php include("../menu_horizontal.php"); ?></div> // ne veut pas s'incruster (même pas le <ul>...</ul>)...

Alors il y a plusieurs points où je ne comprend pas la logique :

#body {
        background : #000;                                                 // pas pris en compte
    background-image:url("site_images/fond.jpg");             // pas pris en compte
    background-repeat:no-repeat;                                 // ben du coup je ne sais pas
    background-position:center top;                              // ben du coup je ne sais pas
    background-size: cover;                                        // ben du coup je ne sais pas
    width : 970px;                                                    // pris en compte
    margin : auto;                                                   // pris en compte
}

#entete {
    background-image : url("site_images/banniere.png");             // pris en compte (image sur fond transparent)
    height : 120px;                                                              // pris en compte
    width : 970px;                                                               // pris en compte
    margin-top : 150px;                                                       // pris en compte
    margin-bottom : 10px;                                                   // je ne sais pas
    border-radius : 5px;                                                      // pas pris en compte
}

DE PLUS :

L'image banniere.png est à fond transparent, on voit à travers la transparence le background body "fond.jpg".
Allez comprendre la logique, pour moi, ya rien de logique là dedans.

porcepic a écrit :

Une fois l'intégration réussie, si tu décides de changer l'apparence d'un bloc de ton site, il te suffira de modifier le fichier CSS de ton site et ça agira sur ton site et ton forum, sans aucune modification supplémentaire.

C'est avec les résultats actuelles que je me demande si faut pas qu'a chaque fois je change de partout (CSS+forum)...

Hors ligne

#7 29-06-2012 16:50:42

PascL
Membre
Inscription : 06-09-2007
Messages : 554
Site Web

Re : [Résolu] Intégration fluxbb sur page PHP d'un site web

Bonjour,

Utilise firefox et le module firebug, ça te dira ce qui est appliqué, ce qui ne l'est pas, ce qui prend le pas sur autre chose, etc, etc

Dernière modification par PascL (29-06-2012 16:50:54)

Hors ligne

#8 02-07-2012 10:01:06

locobastos
Membre
Inscription : 29-06-2012
Messages : 10
Site Web

Re : [Résolu] Intégration fluxbb sur page PHP d'un site web

Merci à tous pour votre aide, j'ai finalement réussi à modifier le forum pour faire une illusion d'incrustation.

Par contre, les chemins relatifs ne marchent pas chez moi, il ne veut pas aller chercher des pages qui sont avant le dossier forum... Est-ce normal ?

Pour ceux qui veulent savoir comment j'ai fais : J'ai modifier le fichier main.tpl et le CSS de mon thème.
J'ai pas eu besoin de header.php, footer.php et sidebar.php comme dans le tuto.

Je suis maintenant apte à essayer d'aider ceux qui en ont besoin.
N'hésitez pas à m'envoyer un mail.

Note du Régisseur
Image supprimée : 1918 x 992 avec un « poids » de 2,37 Mio
Soit vous mettez une image de « poids » raisonnable (moins de 100 kio)
Soit vous mettez un lien vers votre intégration

Edit : Voici le liens de l'image : http://www.echo-online.org/site_images/ … ermine.png

Dernière modification par locobastos (02-07-2012 11:15:48)

Hors ligne

#9 02-07-2012 11:08:41

kristoch
Membre
Inscription : 02-06-2012
Messages : 52

Re : [Résolu] Intégration fluxbb sur page PHP d'un site web

bonjour et bravo! smile
(j'ai vu avant que l'image trop lourde se fasse couic!)

Je suis intéressé pour aller voir ce que donne ton intégration!
Oui mais... ai pas trouvé sur GoGole* ni dans ton code source.
tu n'as pas précisé le site au niveau de ton profil...
si tu as fait tes modifications en local, dès que mis:
Faut penser à modifier ton profil qu'on puisse y aller!

*d'autre part c'est 'accUeil' et non pas 'accEuil' faut permuter! wink

Dernière modification par kristoch (02-07-2012 11:09:55)

Hors ligne

#10 02-07-2012 11:21:30

locobastos
Membre
Inscription : 29-06-2012
Messages : 10
Site Web

Re : [Résolu] Intégration fluxbb sur page PHP d'un site web

kristoch a écrit :

Je suis intéressé pour aller voir ce que donne ton intégration!

Je l'ai ajouté sur mon profil, mais vu mes connaissances en développement web, j'avance doucement, car ce site web me permet d'apprendre en autodidacte justement. Je le met en ligne justement pour le montrer à un pote, car ce site est pour lui. Il est mis à jour dès que j'avance... Il est pour l'instant assez inutiles tongue

kristoch a écrit :

d'autre part c'est 'accUeil' et non pas 'accEuil' faut permuter! wink

Oui, on m'a fait la remarque plusieurs fois, mais vu que j'avais pas de moyen mnémotechnique, je ne savais jamais l'écrire correctement. Or maintenant, j'ai compris l'erreur, plus besoin de moyen mnémotechnique, c'est juste que j'ai pas mis à jour le menu car il est fais en PHP/MySQL. C'est pas juste une liste <ul><li> :s

locobastos a écrit :

Par contre, les chemins relatifs ne marchent pas chez moi, il ne veut pas aller chercher des pages qui sont avant le dossier "forum"... Est-ce normal ?

Et sinon pour mes problèmes de chemins relatifs, personne pour m'aider ?

Dernière modification par locobastos (02-07-2012 11:22:06)

Hors ligne

#11 02-07-2012 11:58:21

Porcepic
Membre
Inscription : 05-07-2010
Messages : 36

Re : [Résolu] Intégration fluxbb sur page PHP d'un site web

Ton problème de chemin relatif apparaît dans du code HTML ou dans du code PHP (par exemple si tu veux inclure un fichier...) ?

Quel chemin mets-tu dans ton code ? Quelle est l'adresse de la page où figure le problème ? Où se situe le fichier que tu cherches ?

Dernière modification par Porcepic (02-07-2012 11:58:32)


Ceci est un virus de signature. Recopiez-le dans votre signature, s'il vous plait.

Hors ligne

#12 02-07-2012 12:07:46

Otomatic
Régisseur
Lieu : Paris, France
Inscription : 12-12-2005
Messages : 3 660
Site Web

Re : [Résolu] Intégration fluxbb sur page PHP d'un site web

Bonjour,

Les chemins relatifs :
- "./mon_fichier" dans même dossier que le fichier appelant
- "../mon_fichier" au niveau supérieur
- "../../mon_fichier" deux niveaux « avant »
- "/mon_fichier" à la racine

Attention, les chemins relatifs dans un fichier css sont relatifs à l'emplacement du fichier css alors que les chemins relatifs dans un script javascript  sont relatif à l'emplacement du fichier php ou html qui charge le script.


Ce n'est pas parce que l'erreur se propage qu'elle devient vérité. Gandhi
Sont différents : ça et sa - est et ait - à et a - ce et se - mes et mais ou met - été et était - c'est et ces - ce-si et ceci
La vie sans musique est tout simplement une erreur, une fatigue, un exil. Friedrich Nietzsche

Hors ligne

#13 02-07-2012 17:57:17

locobastos
Membre
Inscription : 29-06-2012
Messages : 10
Site Web

Re : [Résolu] Intégration fluxbb sur page PHP d'un site web

Porcepic a écrit :

Ton problème de chemin relatif apparaît dans du code HTML ou dans du code PHP (par exemple si tu veux inclure un fichier...) ?

Il apparaît dans du php avec include('chemin/du/fichier.php')
ET dans du HTML avec <link rel="stylesheet" href="mystyle.css" />
ET dans du CSS avec background : url('chemin/de/la/petite/image/qui/se/cache.ext');

Pour du PHP, les fichiers concerné sont :
(root)/forum/include/template/main.tpl

et les pages que je veux sont :
(root)/includes/functions.inc.php ET (root)/includes/menu_horizontal.php

Donc dans main.tpl je met :
<?php include('../includes/menu_horizontal.php') ?>

Je met ../ car le main.tpl est appelé dans (root)/forum/index.php donc normalement, je ne suis censé ne mettre qu'un niveau supérieur. MAIS j'ai beau en mettre autant que j'en veux, dans le F12 de google chrome, il me dit qu'il n'arrive pas à trouver le fichier (root)/forum/menu_horizontal.php (c'est là que je rajoute de ../, mais il me met la même erreur avec autant de ../ que je veux :s)

Pour du HTML, les fichiers concerné sont encore (root)/forum/include/template/main.tpl

et le CSS que je veux est : (root)/mystyle.css
et là même erreur.

Pour le CSS, même erreur.

en gros, une fois dans (root)/forum/ on dirait que rien ne veut aller chercher dans le niveau supérieur, comme s'il y avait une barrière.

Ce qui n'est totalement PAS logique, puisque bizarrement :

MAIN.TPL : <link rel="icon" type="image/x-png" href="../site_images/favicon.png" />
ÇA MARCHE !!!

Je ne comprend pas tout là :s

Je vais revoir le code entièrement, en prenant garde à ce que m'a dis Otomatic.

Je vous remercie tous les deux, et vous tiens au courant smile

Hors ligne

#14 02-07-2012 18:27:45

Otomatic
Régisseur
Lieu : Paris, France
Inscription : 12-12-2005
Messages : 3 660
Site Web

Re : [Résolu] Intégration fluxbb sur page PHP d'un site web

Bonjour,

Faut pas croire roll mais moi aussi, parfois je suis un peu perdu dans un chemin relatif, surtout lorsqu'il s'agit d'include dans un include dans un include ; alors, j'utilise un « truc » temporairement pour savoir exactement à quel niveau d'arborescence l'appel est situé.
À la racine de mon site il y a un fichier vide nommé ici_racine.php et, dans mon fichier de fonctions générales, utilisé pour chaque page, un peu comme le fichier common.php de FluxBB, il y a une fonction nommée ou_est_on():

//Recherche du niveau d'arborescence - Retourne "./" ou "./../" le nombre de fois nécessaire
//Le fichier "ici_racine.php" doit exister à la racine du site
function ou_est_on() {
  for($i=1,$dossier='./';$i<=5 && !file_exists($dossier.'ici_racine.php');$i++,$dossier.='../')
  if ($i==5) {
    echo "Localisation impossible";
    return false;
  }
  return $dossier;
}

Temporairement, dans le code php, à l'endroit où je suis un peu perdu, je mets :

echo "<p>Le script est là :".ou_est_on()."</p>\n";

Qui me donne le chemin relatif pour arriver à la racine du site.

Supposons un fichier à inclure situé à "site/dossier1/dossier2/a_inclure.php"
Dans n'importe quel fichier php, situé n'importe où, à n'importe quel niveau d'arborescence (Limité à 5), si je fait :

include(ou_est_on()."dossier1/dossier2/a_inclure.php");

ça marche.


Ce n'est pas parce que l'erreur se propage qu'elle devient vérité. Gandhi
Sont différents : ça et sa - est et ait - à et a - ce et se - mes et mais ou met - été et était - c'est et ces - ce-si et ceci
La vie sans musique est tout simplement une erreur, une fatigue, un exil. Friedrich Nietzsche

Hors ligne

#15 02-07-2012 18:34:22

locobastos
Membre
Inscription : 29-06-2012
Messages : 10
Site Web

Re : [Résolu] Intégration fluxbb sur page PHP d'un site web

Hou que c'est bien ça smile

je vais utiliser cette méthode, car en effet, c'est pas évident de tout suivre :s

Hors ligne

#16 02-07-2012 18:51:25

Otomatic
Régisseur
Lieu : Paris, France
Inscription : 12-12-2005
Messages : 3 660
Site Web

Re : [Résolu] Intégration fluxbb sur page PHP d'un site web

Bonsoir,

Rappel : Il faut éviter le code php direct dans les fichiers template, par exemple main.tpl
Il faut utiliser la balise <pun_include "mon_fichier_n1.php"> et là, pas de problème de chemin puisque le fichier mon_fichier_n1.php doit être dans mon_forum/include/user/.


Ce n'est pas parce que l'erreur se propage qu'elle devient vérité. Gandhi
Sont différents : ça et sa - est et ait - à et a - ce et se - mes et mais ou met - été et était - c'est et ces - ce-si et ceci
La vie sans musique est tout simplement une erreur, une fatigue, un exil. Friedrich Nietzsche

Hors ligne

#17 02-07-2012 19:22:10

locobastos
Membre
Inscription : 29-06-2012
Messages : 10
Site Web

Re : [Résolu] Intégration fluxbb sur page PHP d'un site web

Sauf que je veux utiliser les fichiers.php que j'utilise pour tous le site...

que j'ai mis dans mon_site/includes/ et que je le forum est dans mon_site/forum/

La solution est donc de transférer les fichiers ?

Hors ligne

#18 03-07-2012 09:48:56

Otomatic
Régisseur
Lieu : Paris, France
Inscription : 12-12-2005
Messages : 3 660
Site Web

Re : [Résolu] Intégration fluxbb sur page PHP d'un site web

Bonjour,

Non, la solution est d'utiliser les bons chemins. Par exemple, dans main.tpl

<body>
<pun_include "menu_haut.php"> <!--modif oto ligne ajoutée -->

Et, dans le fichier mon_site/mon_forum/include/user/menu_haut.php on peut avoir :

include('../includes/menu_general.php');

Ce n'est pas parce que l'erreur se propage qu'elle devient vérité. Gandhi
Sont différents : ça et sa - est et ait - à et a - ce et se - mes et mais ou met - été et était - c'est et ces - ce-si et ceci
La vie sans musique est tout simplement une erreur, une fatigue, un exil. Friedrich Nietzsche

Hors ligne

#19 03-07-2012 10:18:27

locobastos
Membre
Inscription : 29-06-2012
Messages : 10
Site Web

Re : [Résolu] Intégration fluxbb sur page PHP d'un site web

Marche parfaitement, je te remercie smile

Je crois qu'on peux lock ce post, je vais en ouvrir d'autre si j'ai besoin wink

Je remercie tous ceux qui ont pu m'aider smile

Hors ligne

#20 07-07-2012 02:20:50

Mpok
Néo Admin
Inscription : 10-08-2006
Messages : 2 950
Site Web

Re : [Résolu] Intégration fluxbb sur page PHP d'un site web

Et voilà une intégration qui part mal (newbie, mauvaise compréhension) et qui finit bien (moins newbie, meilleure compréhension des principes de FluxBB) ! wink
Merci aux intervenants, et bravo à locobastos pour avoir pris le temps de comprendre… smile

Hors ligne

Pied de page des forums