[Topic Unique] Création d'un forum en PHP
- Accueil
- Forum
- Programmation
- PHP
- [Topic Unique] Création d'un forum en PHP
Ce topic est suivi par : lythande, coucougael94, SlappySlap, PrimFX, Florian, joris1904, Aziguy, hoggy, wiko97, bravic, Artcoco1, Dev_533w3r5, leroyd603
PrimFX Le 27 mars 2016 à 13:29 (Édité le 25 janvier 2019 à 17:50)
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):
- #1 Architecture et base de donnée
- #2 Catégories et sous-catégories
- #3 Nouveau topic
- #4 Lister les topics
- #5 Catégorie et sous-catégorie d'un nouveau topic
- #6 Afficher les topics
- #7 Poster des réponses
- #8 Afficher les réponses
- Intégration d'un éditeur WYSIWYG en JS (annexe)
- Parser du BBCode en PHP (annexe)
- #9 Finitions
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 Le 27 mars 2016 à 15:15 (Édité le 27 mars 2016 à 15:23)
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 Le 27 mars 2016 à 16:25 (Édité le 1 janvier 1970 à 01:00)
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 Le 27 mars 2016 à 17:19 (Édité le 1 janvier 1970 à 01:00)
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 Le 28 mars 2016 à 12:08 (Édité le 1 janvier 1970 à 01:00)
Comptes-tu ajouter un système de vu et de non vu pour le membre connecté ?
Antoine
antoine0 Le 29 mars 2016 à 19:38 (Édité le 1 janvier 1970 à 01:00)
coucougael94 Le 13 avril 2016 à 15:14 (Édité le 1 janvier 1970 à 01:00)
Florian Le 15 avril 2016 à 14:39 (Édité le 15 avril 2016 à 18:09)
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 Le 16 avril 2016 à 11:12 (Édité le 16 avril 2016 à 11:12)
@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 😀
Cyberium Le 15 mai 2016 à 01:25 (Édité le 1 janvier 1970 à 01:00)
Aziguy Le 3 juin 2016 à 14:12 (Édité le 1 janvier 1970 à 01:00)
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 Le 20 août 2016 à 20:52 (Édité le 1 janvier 1970 à 01:00)
Profil introuvable Le 20 août 2016 à 23:36 (Édité le 1 janvier 1970 à 01:00)
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 Le 2 janvier 2017 à 09:59 (Édité le 1 janvier 1970 à 01:00)
Zbuu Le 2 janvier 2017 à 10:46 (Édité le 1 janvier 1970 à 01:00)
Balatharas Le 2 janvier 2017 à 14:59 (Édité le 1 janvier 1970 à 01:00)
bravic Le 25 mars 2019 à 02:22 (Édité le 1 janvier 1970 à 01:00)
Profil introuvable Le 25 mars 2019 à 04:08 (Édité le 1 janvier 1970 à 01:00)
Artcoco1 Le 2 septembre 2020 à 19:23 (Édité le 1 janvier 1970 à 01:00)
est ce que si j'ai besoin d'aide ce topic est toujour actif?