IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Créer une nouvelle page coté utilisateur d'un forum


Sujet :

PHP & Base de données

  1. #1
    Membre à l'essai Avatar de Jejey14
    Homme Profil pro
    Ingénieur IOT
    Inscrit en
    Février 2019
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur IOT

    Informations forums :
    Inscription : Février 2019
    Messages : 16
    Points : 11
    Points
    11
    Par défaut Créer une nouvelle page coté utilisateur d'un forum
    Bonsoir à tous,

    Je suis en train de créer un forum et j'en suis à mes débuts

    Je me pose la question sur la création d'un article par l'utilisateur

    Coté Admin : Par exemple je crée la page "topic1.php", avec un article sur l'alimentation et mes utilisateurs peuvent commenter cet article mais voilà j'ai d'abord crée la page

    Coté utilisateur: Il veut créer un nouvel article , mais du coup ma question ( ça se trouve c'est tout bête) est : comment il va faire et comment ça va se passer coté PHP, car l’intérêt et que s'il poste un nouvel article qui lui aussi aura des commentaires, est de créer une nouvelle page mais l'admin peut pas créer cette page vu qu'il ne sais pas que l'utilisateur va créer cette article et vu qu'elle sera automatique lorsqu'il voudra créer un nouveau sujet ! A moins de mettre sur une seule page tout les articles créée par les utilisateurs mais on a pas finit de scroller ^^

    Merci d'avance

  2. #2
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Bon déjà, tu fais un forum ou un système d'articles participatif ?
    Un forum, c'est une succession de messages dans des discussions (genre ici, c'est un forum)

    Ce que tu décris, c'est plutôt ce qu'on fait avec les Blogs : chaque utilisateur peut publier des "articles" qui sont soit accessibles par une page générale, soit par la page du l'utilisateur, avec un système de commentaires pour chaque article.
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  3. #3
    Membre à l'essai Avatar de Jejey14
    Homme Profil pro
    Ingénieur IOT
    Inscrit en
    Février 2019
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur IOT

    Informations forums :
    Inscription : Février 2019
    Messages : 16
    Points : 11
    Points
    11
    Par défaut
    Plutôt un système d'articles participatif !

    J'ai avancé dessus et voici le topo :

    - J'ai la page "ecrire_article.php" où user1 écrit un article et grâce à la méthode GET il pourra voir son article affiché sur la même page

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <?php
    if(isset($_GET['message'])) {
       echo '<font color="red">'.$_GET['message']."</font>";
    }
    ?>
    - Ensuite j'ai la page "CategorieCap.php" où tout les articles sont référencés et grâce au lien on peut afficher l'article

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <?php
    $afficherArticle = $bdd->query("SELECT * FROM articles");
    while ($user = $afficherArticle->fetch()) { ?>
     
    <a href="ecrire_article.php?sujet=<?php echo $user['sujet']; ?>&message=<?php echo $user['message']; ?>"><?php echo $user['message']; ?></a><br /><br />
     
    <?php
    }
    ?>
    Cela fonctionne mais le problème c'est quand je suis sur la page "ecrire_article.php, j'écris mon message, puis il s'affiche mais quand j'actualise la page après j'aimerais qu'il revienne sur la page vierge mais au lieu de ça il reste sur le même article et cela créée un doublon de l'article dans la table de ma bdd au lieu de vérifier s'il existe déjà

  4. #4
    Membre à l'essai Avatar de Jejey14
    Homme Profil pro
    Ingénieur IOT
    Inscrit en
    Février 2019
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur IOT

    Informations forums :
    Inscription : Février 2019
    Messages : 16
    Points : 11
    Points
    11
    Par défaut
    EDIT : Pour les doublons c'est résolu il fallait rajouter des conditions c'est moche mais ça fera l'affaire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    $reqMess = $bdd->query("SELECT * FROM articles ");
    $messExist = $reqMess->fetch
     
    $reqSujet = $bdd->prepare("SELECT * FROM articles WHERE sujet = ?");
    $reqSujet->execute(array($sujet));
    $sujetExist = $reqSujet->fetch();
     
    $reqO = $bdd->prepare("SELECT * FROM articles WHERE message = ?");
    $reqO->execute(array($result));
    $sujetO = $reqO->fetch();
     
    if($sujetExist == 0 ) 
    {                                    
            if($messExist['message'] != $result AND $sujetO == 0 )
            {    
             $insertPseudo = $bdd ->prepare('INSERT INTO articles(pseudo,message, sujet, dateofpublication) VALUES(?,?,?,?)');
             $insertPseudo->execute(array($pseudo,$result,$sujet,$date));
             }
             else
             {  
              echo $erreurMess = "Message déjà existant"."<br />";
              }
    }                      
    else 
    {
    echo $erreurMess = "sujet déjà existant"."<br />";
    }
    Pour l'histoire de l'utilisateur qui écrit un nouvel article c'est résolu ! il me suffisait juste de poser le problème avec un petit logigramme mais écrire sur le forum ça aide beaucoup !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] Faire une recherche dans la base de données et créer de nouvelles pages
    Par japhettchabao dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 18/09/2014, 10h18
  2. Réponses: 3
    Dernier message: 03/06/2013, 09h24
  3. Créer une nouvelle page dynamiquement
    Par od.dev dans le forum Rave
    Réponses: 4
    Dernier message: 07/11/2011, 16h05
  4. [Batch] créer une nouvelle variable d'environnement utilisateur
    Par riadmar dans le forum Scripts/Batch
    Réponses: 3
    Dernier message: 07/04/2011, 15h58
  5. [MySQL] Créer un lien vers une nouvelle page
    Par encore_php dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 16/02/2008, 18h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo