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 Spoiler 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>
Suite : Ensuite : admin/actions.php Spoiler 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 Spoiler 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 Spoiler 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 ^^
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)
Il est actuellement sur mon site, celui de l'exemple pour la page staff et il marche niquel 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