[Topic Unique] Création d'un forum en PHP

PrimFX

PrimFX Le 27 mars 2016 à 13:29 (Édité le 25 janvier 2019 à 17:50)

Bonjour à tous !

Au fil de cette série que j'ai réalisé, je vous ai appris à créer un forum en 9 épisodes (et quelques épisodes annexes):
Comme dit dans le dernier épisode, je vous ai donné les clés pour construire votre forum de A à Z. Il ne tient qu'à vous de rajouter des fonctionnalités, d'en proposer, etc.

Je crée donc ce topic afin que vous puissiez poser vos questions, vos bouts de code, des conseils, et tout ce que vous voudrez en rapport avec la création de ce forum 😀

A noter que je ferai d'autres vidéos qui pourront se rapporter à la création du forum dans les prochains temps. Par exemple: l'URL Rewriting, l'intégration de smileys à l'éditeur WYSIBB, etc. Je rajouterai les liens de ces futures vidéos dans ce topic au fur et à mesure de leur sortie 😉

@+
PaulLavieille

PaulLavieille Le 27 mars 2016 à 15:15 (Édité le 27 mars 2016 à 15:23)

Salut Prim !

Tout d'abord je te dis un petit truc par rapport à ton forum :
-tu devrais faire une sous catégorie / catégorie "jeu" ou "autre" ou un truc du style 😉 
-faire une petite image notification dans le header pour savoir si on a une réponse à un post

Et sinon par rapport à ton topic :
tu pourrais m'envoyer le dossier de l'ensemble des tutos du forum ? car quand je regarde tes vidéos j'essaye plus de comprendre que de recopier :( 

@+
neecride

neecride Le 27 mars 2016 à 16:25

Salut c'est un bon tuto que tu fait la, néanmoins tu aurais du mettre un dump SQL des tables a créer ça aurait étais plus simple.

La ou je me perd c'est que tu mélange tous je veut dire par la ; que tu installe les catégorie et ensuite tu passe a autre chose, tu aurais du commencer par créer le formulaire de créations des catégories et sous catégorie et-puis ensuite l'affichage on comprend mieux la structure par la suite.

perso j'ai créer toutes ma structure de site web ma structure est déjà organiser, mai je suit ton tuto par ce que je ne veut pas me prendre la tête a créer un forum mais en même temps je ne veut pas installer un forum genre phpbb et modifier le système pour qu'il convienne a mon site.

et enfin pour la page index de tous mon système voila ce que j'ai fait :

<?php
if(session_status() == PHP_SESSION_NONE){//on verifi et demarre les sessions
    session_start();   
}
require 'lib/cnxbdd.php';//connexion a la base de donnée
require 'lib/libs-includes.php';//toutes mes lib requise
$pages = scandir('pages/');//on scan le dossier ou sont les pages
if( isset($_GET['page']) && !empty($_GET['page']) ){ //controll pages exist
    
    if(in_array($_GET['page'].'.php',$pages )){
        
        $page = $_GET['page'];
        
    }else{
        //on redirige si on est pas sur la bonne page
        setFlash('<strong>Oh oh!</strong> page non trouver ! <strong> Existe pas ou plus </strong>','warning');
      redirect('home');
        
    }
    
    
}else{
        //on redirige si on est pas sur la bonne page
        setFlash('<strong>Oh oh!</strong> page non trouver ! <strong> Existe pas ou plus </strong>','warning');
      redirect('home');
    
}
$pages_functions = scandir('functions/');//on scan le dossier functions 
if( in_array ($page.'.func.php', $pages_functions) ){//on inclu les pages traitement formulaire etc... 
    
    include 'functions/' . $page . '.func.php';
    
}
include 'parts/header.php';//on inclue une seul fois le header 
include 'pages/' . $page . '.php';//les page seront toujours ici
include 'parts/footer.php';//on inclue une seul fois le footer
 
Je fait la même chose pour l'administration et le forum on se prend moins la tête comme ça 😀 mai bon on ajoute quand même des conditions d’accès. 

Tu devrais partager ton script directement dans une archive une fois fini.

Cordialement 
bykertix

bykertix Le 27 mars 2016 à 17:19

Re :D moi j'ai un probleme, donc quand je veut poster un nouveau topic sa ne marche pas, sa ne me dit pas d'erreur (ps pareil dans la bdd) mais si je l'insere via la bdd sa marche je le vois sur le site! et puis sa marcher y'a 2 min, entre les 2 j'ai juste suppr f_topics mais je l'ai créer aussitot tout est bon, mais sa ne marche toujours pas ...............
Voila mon nouveau_topic.php:

<?php $Auth->allow('member'); ?>
<?php if($Auth->user('id')); ?>
<?php
$pdo = new PDO('mysql:dbname=c***rtix;host=localhost', 'c***e', 'C!***S');
/* Traitement du formulaire de création de Topic */
if(isset($_SESSION['Auth'])) {
   if(isset($_POST['tsubmit'])) {
      if(isset($_POST['tsujet'],$_POST['tcontenu'])) {
         $sujet = htmlspecialchars($_POST['tsujet']);
         $contenu = htmlspecialchars($_POST['tcontenu']);
         if(!empty($sujet) AND !empty($contenu)) {
            if(strlen($sujet) <= 70) {
               if(isset($_POST['tmail'])) {
                  $notif_mail = 1;
               } else {
                  $notif_mail = 0;
               }
               $ins = $pdo->prepare('INSERT INTO f_topics (id_createur, sujet, contenu, notif_createur, date_heure_creation) VALUES(?,?,?,?,NOW())');
               $ins->execute(array($_SESSION['Auth']->id,$sujet,$contenu,$notif_mail));
            } else {
               $terror = "Votre sujet ne peut pas dépasser 70 caractères";
            }
         } else {
            $terror = "Veuillez compléter tous les champs";
         }
      }
   }
} else {
   $terror = "Veuillez vous connecter pour poster un nouveau topic";
}
require('nouveau_topic.view.php'); /* Appel du fichier "vue" de notre page */
?>

antoine0

antoine0 Le 28 mars 2016 à 12:08

hello PrimFx,

Comptes-tu ajouter un système de vu et de non vu pour le membre connecté ?

Antoine
antoine0

antoine0 Le 29 mars 2016 à 19:38

Ps: juste pour te faire remarquer qu'en dessous d'une certaine taille l'éditeur BBCODE n'est plus responsive 😉
coucougael94

coucougael94 Le 13 avril 2016 à 15:14

Pourrais-tu mettre un système de like sur ton forum (comme tu l'avais présenté pour une de tes anciennes vidéos) s'il te plait. ça serais bien 😄 .
Florian

Florian Le 15 avril 2016 à 14:39 (Édité le 15 avril 2016 à 18:09)

Comme je t'ai dit sur Twitter, faudrait mettre un dump de ton .sql, car tu l'as changer a chaque vidéos quasiment

Aussi pourquoi pas mettre une archive .rar ou directement le code sur Github

Aussi, j'ai une bug sur la function url_custom_encode quand je met part exemple Plainte et réclamation ça me met un titre vide donc je suis obliger d'enlever pour les titres
SlappySlap

SlappySlap Le 16 avril 2016 à 11:12 (Édité le 16 avril 2016 à 11:12)

salut
@primfx peut tu nous donne le code source (entier) du forum pour que l'on puisse regarde le code et peut être l’améliore ? merci 😀
Florian

Florian Le 12 mai 2016 à 19:59

Pti UP pour le .sql :x ?
Cyberium

Cyberium Le 15 mai 2016 à 01:25

@Florian Le sql change quasiment pas à part les traits d'union remplacé par des underscore; puis si tu suis les tutos, tu t'en fiches du .sql non ? 😰
Aziguy

Aziguy Le 3 juin 2016 à 14:12

BONJOUR COOL CE QUE TU FAIS POUR NOUS!

Merci pour tes conseils et des tutos qui me permettent de m'améliorer...
Serait-il possible d'avoir le template que tu as utiliser pour ton site STP?
Serait-il aussi possible de mettre en place un systeme de notification comme celui de facebook (bulle avec le nombre de message...)
Merci d'avance pour tout et bon bon courage à la PrinFx...
Balatharas

Balatharas Le 20 août 2016 à 20:52

Mettons un petit up histoire de rappeler l'existence du topic !





Profil supprimé

Profil supprimé Le 20 août 2016 à 23:36

Hello 'PrimFX' 😉

J'avais créer ce topic pour apporter quelques améliorations à ton site, quelques personnes sont d'accord de mes idées mais j'aimerais que tu jette un coup d'oeil et me dire qu'est-ce qui a été amélioré.
Merci pour l'aide que tu nous fourni sur tes tutoriels 😉

Amicalement 😀
wiko97

wiko97 Le 2 janvier 2017 à 09:59

bjr pour avoir le code source svp?
Zbuu

Zbuu Le 2 janvier 2017 à 10:46

@wiko97 il faut que tu sois membre premium pour avoir les codes sources je crois
Balatharas

Balatharas Le 2 janvier 2017 à 14:59

@wiko97 oui il faut être membre premium pour voir le code du tuto, et selon moi tu devrais suivre le tuto et écrire le code toi-même sinon l'utilité bah jla vois pas.
bravic

bravic Le 25 mars 2019 à 02:22

le forum fait buger le reste du site une solution svp
Profil supprimé

Profil supprimé Le 25 mars 2019 à 04:08

Re:

@bravic, pour le signalement des bugs c'est ici. Ne déterre pas les topics anciens (cf règles).
Pour celui-ci c'est pas grave puisque @PrimFX a rééditer le sujet principal récemment.
Vous devez être connecté pour poster une réponse. Se connecter ou Créer un compte