1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies. En savoir plus.

[Tuto] Remplacer le menu supprimer news par editer news

Discussion dans 'Vos Tutoriels' créé par Elmoren, 24 Mai 2015.

MineStrator, Votre hébergeur de serveur minecraft
  1. Elmoren

    Elmoren Sergent-chef

    290
    52
    28
    Salut,
    Dans ce tuto je vais vous apprendre comment changer le menu Supprimer une news par celui Editer une news similaire à celui d'éditer une page.
    Je n'expliquerai pas le code à vous de le comprendre et l'améliorer si vous voulez ;)
    Editez : admins/page/news.php
    PHP:
    <h1><center><strong>Gestion des news du site</strong></center></h1>

    <div class="alert alert-dismissable alert-success"><center>Les news sont visibles sur l'accueil, elles informent vos joueurs des nouveautées relatives à votre communautée, pensez à rédiger des news souvent cela prouve votre activité, ça fait toujours plaisir à un joueur de voir un nouveau message!</center></div>

    <h3><center>Créer une news</center></h3>
    <div class="alert alert-dismissable alert-success"><center>Pour ajouter une news, rien de plus simple, il suffit en effet de lui attribuer un titre, et... Un message !</center></div>

    <form method="POST" action="?&action=postNews">

        <div class="form-group">
            <label class="control-label">Titre de la news</label>
            <div >
                <input type="text" name="titre" class="form-control" placeholder="ex: Sortie du launcher !">
            </div>
        </div>
        <div class="form-group">
            <label class="control-label">Contenu de la news</label>
            <div >
                <textarea id="news_1" name="message" style="height: 275px; margin: 0px; width: 100%;"></textarea>
            </div>
        </div>
        <input type="submit" class="btn btn-primary" value="Envoyer" />

    </form>

    <div class="alert alert-dismissable alert-success"><center>Sachez que le CMS n'affiche que les 10 dernières news, les anciennes disparaitrons donc au fur et à mesure. Je vous conseille de garder les vieilles news et de supprimer que les fails !</center></div>

    </form>

    <?php if(!empty($tableauNews)) { ?>
        <h3><center>Editer une news</center></h3>



    <ul class="nav nav-tabs">
        <?php for($i 0$i count($tableauNews); $i++) { ?>
        <li><a <?php if($i == 0) echo 'class="active"'?> href="#news<?php echo $tableauNews[$i]['id']; ?>" data-toggle="tab"><?php echo $tableauNews[$i]['titre']; ?></a></li>
        <?php     ?>
    </ul>


    <div class="tab-content">
        <?php for($i 0$i count($tableauNews); $i++) { ?>
         <div class="tab-pane <?php if($i == 0) echo 'active'?>" id="news<?php echo $tableauNews[$i]['id']; ?>">

             <form method="POST" action="?&action=editNews&id=<?php echo $tableauNews[$i]['id']; ?>" class="well">
                 
                <div class="row">
                    <div class="form-group col-md-8">
                            <label>Titre de la news</label>
                            <input type="text" class="form-control" name="titre" value="<?php echo $tableauNews[$i]['titre']; ?>">
                    </div>
                    <div class="form-group col-md-4">
                        <label>Supprimer la news définitivement</label>
                        <a href="?action=supprNews&newsId=<?php echo $tableauNews[$i]['id']; ?>" class="btn btn-danger form-control">Supprimer la News</a>
                    </div>
                </div>
                <?php echo '<textarea id="news_' $tableauNews[$i]['id'] . '" name="message" style="height: 275px; margin: 0px; width: 100%;">' $tableauNews[$i]['message'] . '</textarea>';?>
                <?php echo '<script type ="text/javascript"> CKEDITOR.replace( \'news_' $tableauNews[$i]['id'] . '\' ); </script>';?>
                <hr>
                <input type="submit" class="btn btn-success" value="Modifer le message" />
    </form>

         </div>
         <?php     ?>
    </div>
    <?php ?>
       
       

    </br>
    </br>
    <script type="text/javascript">
        CKEDITOR.replace( 'news_1' );
    </script>
     
  2. Elmoren

    Elmoren Sergent-chef

    290
    52
    28
    Suite :
    Ensuite : admin/actions.php
    PHP:
    <?php
    /*
        Ce fichier PHP effectue telle ou telle action selon le contenu des gets envoyés par la theme(selon le lien sur lequel l'utilisateur à cliqué etc...).
    */
    if(isset($_GET['action']) AND isset($_Joueur_['rang']) AND $_Joueur_['rang'] == 1)
    {
        switch (
    $_GET['action']) // on utilise ici un switch pour inclure telle ou telle page selon l'action.
        
    {             
            case 
    'commande':
                require_once(
    'admin/actions/commande.php');
            break;
        
            case 
    'general':
                require_once(
    'admin/actions/general.php');
            break;
        
            case 
    'editTheme':
                require_once(
    'admin/actions/editTheme.php');
            break;
        
            case 
    'supprMembre':
                require_once(
    'admin/actions/supprMembre.php');
            break;
        
            case 
    'modifierMembres':
                require_once(
    'admin/actions/modifierMembres.php');
            break;
        
            case 
    'creerPage':
                require_once(
    'admin/actions/creerPage.php');
            break;
        
            case 
    'supprPage':
                require_once(
    'admin/actions/supprPage.php');
            break;
                
            case 
    'boutique':
                require_once(
    'admin/actions/boutique.php');
            break;
                
            case 
    'supprCategorie':
                require_once(
    'admin/actions/supprCategorie.php');
            break;
                
            case 
    'supprAction':
                require_once(
    'admin/actions/supprAction.php');
            break;
                
            case 
    'editerAction':
                require_once(
    'admin/actions/editerAction.php');
            break;
        
            case 
    'serveurJsonNew':
                require_once(
    'admin/actions/serveurJsonNew.php');
            break;
        
            case 
    'serveurConfig':
                require_once(
    'admin/actions/serveurConfig.php');
            break;
        
            case 
    'supprJson':
                require_once(
    'admin/actions/serveurJsonSuppr.php');
            break;
        
            case 
    'newLienMenu':
                require_once(
    'admin/actions/newLienMenu.php');
            break;
        
            case 
    'editPayement':
                require_once(
    'admin/actions/editPayement.php');
            break;
        
            case 
    'creerOffrePaypal':
                require_once(
    'admin/actions/creerOffrePaypal.php');
            break;
        
            case 
    'modifierOffrePaypal':
                require_once(
    'admin/actions/modifierOffrePaypal.php');
            break;
        
            case 
    'supprimerPaypalOffre':
                require_once(
    'admin/actions/supprimerPaypalOffre.php');
            break;
        
            case 
    'supprLienMenu':
                require_once(
    'admin/actions/supprLienMenu.php');
            break;
        
            case 
    'newListeMenu':
                require_once(
    'admin/actions/newListeMenu.php');
            break;
        
            case 
    'modifierLien':
                require_once(
    'admin/actions/modifierLien.php');
            break;
        
            case 
    'editMenuListe':
                require_once(
    'admin/actions/editMenuListe.php');
            break;
        
            case 
    'nouveauMenuListeLien':
                require_once(
    'admin/actions/nouveauMenuListeLien.php');
            break;
        
            case 
    'deplacerMenu':
                require_once(
    'admin/actions/deplacerMenu.php');
            break;
        
            case 
    'postNavRap':
                require_once(
    'admin/actions/postNavRap.php');
            break;

            case 
    'postNews':
                require_once(
    'admin/actions/postNews.php');
            break;
        
            case 
    'supprNews':
                require_once(
    'admin/actions/supprNews.php');
            break;
        
            case 
    'creerCategorie':
                require_once(
    'admin/actions/creerCategorie.php');
            break;
        
            case 
    'creerOffre':
                require_once(
    'admin/actions/creerOffre.php');
            break;
        
            case 
    'creerAction':
                require_once(
    'admin/actions/creerAction.php');
            break;
        
            case 
    'editRapNav':
                require_once(
    'admin/actions/editRapNav.php');
            break;
        
            case 
    'newSlider':
                require_once(
    'admin/actions/newSlider.php');
            break;
        
            case 
    'changeSlider':
                require_once(
    'admin/actions/changeSlider.php');
            break;
        
            case 
    'postSlider':
                require_once(
    'admin/actions/postSlider.php');
            break;
        
            case 
    'supprSlider':
                require_once(
    'admin/actions/supprSlider.php');
            break;
        
            case 
    'postBG':
                require_once(
    'admin/actions/postBG.php');
            break;
            case 
    'typeBG':
                require_once(
    'admin/actions/postBG.php');
            break;
        
            case 
    'modifierVotesGen':
                require_once(
    'admin/actions/modifierVotesGen.php');
            break;
        
            case 
    'creerLienVote':
                require_once(
    'admin/actions/creerLienVote.php');
            break;
        
            case 
    'supprLienVote':
                require_once(
    'admin/actions/supprLienVote.php');
            break;
        
            case 
    'editPage':
                require_once(
    'admin/actions/editPage.php');
            break;
        
            case 
    'creerSection':
                require_once(
    'admin/actions/creerSection.php');
            break;
        
            case 
    'supprSection':
                require_once(
    'admin/actions/supprSection.php');
            break;
        
            case 
    'editPermissions':
                require_once(
    'admin/actions/editPermissions.php');
            break;
        
            case 
    'supprTicket':
                require_once(
    'admin/actions/supprTicket.php');
            break;
        
            case 
    'newWidget':
                require_once(
    'admin/actions/newWidget.php');
            break;
        
            case 
    'supprWidget':
                require_once(
    'admin/actions/supprWidget.php');
            break;
        
            case 
    'upWidget':
                require_once(
    'admin/actions/upWidget.php');
            break;    
        
            case 
    'editNews':
                require_once(
    'admin/actions/editNews.php');
            break;
        
            case 
    'downWidget':
                require_once(
    'admin/actions/downWidget.php');
            break;
        
            case 
    'resetVotes':
                
    $bddConnection->exec('DELETE FROM cmw_votes');
            break;
        
            
    // Si le joueur a rentré un url contenant une valeur d'action innexistant?
            
    default:
                
    header('Location: admin.php');
        }
    }
        
    header('Location: admin.php');
    ?>
    Puis créer un fichier dans : admin/actions qui s’appellera editNews.php ce qui donne : admin/actions/editNews.php
    PHP:
    <?php

        $req 
    $bddConnection->prepare('UPDATE cmw_news SET titre = :titre, message = :contenu WHERE id = :id');
        
    $req->execute(array(
            
    'titre' => $_POST['titre'],
            
    'contenu' => $_POST['message'],
            
    'id' => $_GET['id']        ));

    ?>
    Voilà c'est tout, maintenant vous pouvez éditer vos news :)

    EDIT : J'ai oublié de préciser : Il faut aussi modifier le fichier : admin/actions/supprNews.php
    PHP:
    <?php
    $req 
    $bddConnection->prepare('DELETE FROM cmw_news WHERE id = :id');
    $req->execute(array ( 'id' => $_GET['newsId']) );
    ?>
    Ayant eu la flemme de refaire une form pour envoyer une requête POST j'ai utilisé une requête GET envoyé en appuyant sur le bouton supprimer une news ^^ :D
     
    • Utile Utile x 1
    Dernière édition: 25 Mai 2015
  3. Vladort

    Vladort Fondateur CMW Staff Fondateur

    815
    373
    63
    Je n'est pas tester ton script , mais si il marche je pense l'intégrer a la prochaine mise a jours (ou tu sera bien entendu dans les crédits)
     
    • J'accepte J'accepte x 2
  4. AngryKiller

    AngryKiller ✬ Maréchal ✬

    1 037
    159
    63
    Bravo j'essaye ton script dés que je le pourrais
     
    • J'aime J'aime x 1
  5. Elmoren

    Elmoren Sergent-chef

    290
    52
    28
    Il est actuellement sur mon site, celui de l'exemple pour la page staff et il marche niquel :D
    Merci de l'intégrer je trouve sympa de pouvoir modifier les news, je pense que tu dois pouvoir l'améliorer au passage niveau présentation aussi xD ^^ j'ai utiliser le css de la page pour modifier les pages du site :)
    EDIT : Tu as vu mon tuto pour le CKEditor ? Je sais pas si je suis le seul à avoir ce problème tu devrais l'intégrer aussi je pense :)
     
  6. Elmoren

    Elmoren Sergent-chef

    290
    52
    28
    Inclus de base dans le CMS maintenant :)
     

Partager cette page

Chargement...