Maison > développement back-end > tutoriel php > Utilisez PHP pour créer un système de gestion d'actualités, utilisez votre cerveau pour l'apprendre ! ! ! (Y compris front et back-office)

Utilisez PHP pour créer un système de gestion d'actualités, utilisez votre cerveau pour l'apprendre ! ! ! (Y compris front et back-office)

慕斯
Libérer: 2023-04-10 07:12:02
avant
7681 Les gens l'ont consulté

Savez-vous comment coder un système de communiqués de presse basé sur PHP ? Vraisemblablement, de nombreux étudiants vous demanderont d’utiliser PHP pour développer certains systèmes lors de leurs examens finaux, alors dépêchez-vous et apprenez-le ! ! !

Utilisez PHP pour créer un système de gestion d'actualités, utilisez votre cerveau pour l'apprendre ! ! ! (Y compris front et back-office)

2. Analyse des exigences

1. Fonctions du logiciel.

News Release System (News Release System ou Content Management System), également appelé Content Management System CMS (Content Management System), est un communiqué de presse basé sur le réseau et la gestion Le système de gestion est un système basé sur le mode B/S. Ce système peut remplir presque toutes les fonctions du communiqué de presse. Avec l'utilisation de systèmes de diffusion d'informations en ligne, Internet constitue un média d'information plus important que les journaux télévisés.

Notre conception de ce système est la condition préalable à la réalisation de la fonction de ce système. La première consiste à assurer une fonction de publication et de gestion du classement des actualités. Deuxièmement, , l'interaction des utilisateurs est mise en œuvre et les utilisateurs peuvent participer aux commentaires sur l'actualité. Enfin, une gestion globale de ce communiqué doit être réalisée pour faciliter la gestion des administrateurs.

Pour réaliser cette énorme fonction, nous divisons d'abord les autorisations des utilisateurs. Différents utilisateurs ont des autorisations différentes. Les visiteurs (ceux qui ne sont pas connectés) accèdent à la page principale du système de communiqués de presse et peuvent parcourir toutes les actualités pertinentes et consulter les commentaires d'autres personnes. Mais il n'y a pas de privilèges particuliers. Les téléspectateurs enregistrés (utilisateurs) disposent non seulement de toutes les fonctions des téléspectateurs invités, mais peuvent également commenter certaines actualités. Enfin, il y a l'administrateur, qui a la plus haute autorité et peut gérer toutes les actualités et catégories d'actualités. De nouvelles catégories d'actualités peuvent être ajoutées et modifiées, et de nouveaux contenus d'actualités peuvent également être ajoutés et modifiés.

2.

Interface logicielle

Selon les fonctions de base que le système de communiqués de presse devrait avoir et les exigences de l'utilisateur pour le système de communiqués de presse, nous effectuerons le fonctionnement modules de cette division du système de communiqués de presse pour faciliter la mise en œuvre de chaque fonction. En même temps, il est également très pratique et intuitif à utiliser pour les utilisateurs. Par conséquent, après nos analyses et conceptions répétées, nous avons divisé ce système de communiqués de presse en 9 modules fonctionnels. Les noms détaillés des modules de fonction sont les suivants :

(1) Module de navigation dans la classification des actualités

(2) Module de récupération des actualités

(3) Module permettant aux utilisateurs de publier des commentaires d'actualité après s'être connectés

(4) Module de connexion et d'enregistrement des utilisateurs

(5) Module pour les actualités du backend de l'administrateur release

(6) Module de gestion des actualités en arrière-plan de l'administrateur

(7) Module d'ajout de catégories d'actualités en arrière-plan de l'administrateur

(8) Module de gestion des catégories d'actualités en arrière-plan de l'administrateur

(9) Module de révision des commentaires du backend de l'administrateur

3

Conception du logiciel

1.

Conception de la base de données

La conception de bases de données est au cœur de la conception de bases de données dans le département CMS. La conception de la base de données détermine directement le processus fonctionnel du système CMS et l'efficacité du système d'exploitation. La conception de la base de données nécessite donc une réflexion approfondie. Assurez-vous de prendre en compte toutes les fonctions du système de communiqués de presse.

La base de données est conçue avec les éléments de données suivants :

(1

) Catégorie Actualités : Catégorie ID, nom de la catégorie.

(2) Informations utilisateur : UtilisateurID, nom d'utilisateur, mot de passe de connexion.

(3) Informations sur l'administrateur :

Administrateur ID, nom d'utilisateur, mot de passe de connexion, profession. (Les administrateurs ne peuvent être ajoutés qu'en manipulant la base de données)

(4

) Communiqué de presse : Actualité ID, administrateur ID, catégorie ID, titre, imageURL, contenu, heure de publication, nombre de clics, pièce jointeURL.

(5) Informations sur le commentaire : ID du commentaire, ID utilisateur, actualité ID, contenu du commentaire, heure du commentaire, statut de l'avis, éditeur IP.

create database news;

use news;

create table category(

     category_id int auto_increment primary key,

     name char(20) not null

);

create table users(

     user_id int auto_increment primary key,

     name char(20) not null,

     password char(32)

);

create table admin(

     admin_id int auto_increment primary key,

     admin char(20) not null,

     apassword char(20),

     position char(20)

);

create table news(

     news_id int auto_increment primary key,

     admin_id int,

     category_id int,

     title char(100) not null,

     picture char(50),

     content text,

     publish_time char(30),

     clicked int,

     attachment char(100),

     constraint FK_news_admin foreign key (admin_id) references admin(admin_id),

     constraint FK_news_category foreign key (category_id) references category(category_id)

);

create table review(

     review_id int auto_increment primary key,

     user_id int,

     news_id int,

     content text,

     publish_time datetime,

     state char(10),

     ip char(15),

     constraint FK_review_users foreign key (user_id) references users(user_id),

     constraint FK_review_news foreign key (news_id) references news(news_id)

);
Copier après la connexion

2. Conception du logiciel

Le système de diffusion de nouvelles est divisé en deux parties : la réception et le backend. Pour les opérateurs front-end, La page frontale du système CMS est la partie qu'ils peuvent voir, donc l'opération frontale doit être aussi intuitive et pratique que possible. Les utilisateurs peuvent facilement parcourir les actualités connexes en ouvrant la page d'accueil. Ils peuvent directement interroger les actualités et parcourir directement les actualités pertinentes. En même temps, vous pouvez parcourir différents types d’actualités selon différentes catégories d’actualités. Les utilisateurs enregistrés peuvent se connecter via l'interface de connexion. Une fois que l'utilisateur s'est connecté avec succès, il aura le droit de commenter. Lorsque l'utilisateur a besoin de commenter l'actualité après avoir parcouru certaines actualités, il lui suffit d'entrer dans la section de commentaires correspondante de l'actualité pour ajouter le contenu sur lequel il souhaite commenter. , et il peut être ajouté avec succès. En même temps, revenez pour continuer à parcourir les commentaires des autres.

Pour la gestion du backend, l'administrateur a non seulement le pouvoir d'exploiter toutes les fonctions du frontend, mais peut également effectuer une gestion complète du site Web. Plus précisément, dans la gestion des actualités, l'administrateur peut définir et ajouter de nouvelles catégories d'actualités afin que les catégories d'actualités puissent être affichées sur la première page. En même temps, les catégories d'actualités existantes peuvent être modifiées. et Supprimer les actualités. Assurer la dynamique du site Internet. Deuxièmement, l'administrateur est responsable de la gestion globale des articles d'actualité, comme la révision des commentaires, etc.

4. Mise en œuvre du logiciel

(1) Module de navigation dans les catégories d'actualités

La navigation dans les actualités est destinée à tous les utilisateurs. Avec les autorisations les plus élémentaires, afin de permettre aux utilisateurs de parcourir rapidement les actualités, nous avons conçu une fonction de navigation classée pour les actualités. Tant que l'utilisateur accède à la page d'accueil du système de communiqués de presse et souhaite parcourir quel type d'actualités, il lui suffit de cliquer sur le nom de la catégorie d'actualités sur la page d'accueil pour afficher toutes les actualités du type d'actualités qu'il souhaite. à parcourir. Et organisez toutes les nouvelles dans l’ordre de l’heure de la publication de la nouvelle. Dans la liste d'actualités ouverte de ce type d'actualité, il suffit aux utilisateurs de cliquer sur le titre d'actualité correspondant pour parcourir rapidement le contenu détaillé de cette actualité. Y compris le titre de l'actualité, le contenu détaillé de l'actualité, la source de l'actualité, l'heure de sortie de l'actualité et le nombre de clics, etc. Par conséquent, il offre une commodité aux utilisateurs qui aiment prêter attention à quel type d’actualités. Dans le même temps, ce système de diffusion d'actualités ajoute également deux modules de navigation dans l'actualité. La première consiste à répertorier les actualités les plus populaires auprès des utilisateurs en fonction du nombre de clics sur l’actualité. C'est-à-dire les actualités avec le plus grand nombre de clics. L'autre consiste à répertorier les dernières nouvelles pour les utilisateurs en fonction de l'heure à laquelle les nouvelles ont été publiées par l'administrateur.

Par conséquent, grâce à ce module de fonction de navigation dans les actualités à 3 blocs, les différents besoins des différents utilisateurs peuvent être satisfaits.

Utilisez PHP pour créer un système de gestion dactualités, utilisez votre cerveau pour lapprendre ! ! ! (Y compris front et back-office)Code principal :

<section>

<p id="yule" class="heading">娱乐</p>

<p class="content">

<ul class="list">

<?php

$sql= "select * from news where category_id=1";

$newsRes = mysql_query($sql);

while($news = mysql_fetch_array($newsRes)){

echo"<li><a href=&#39;content.php?news_id=".$news[0]."&#39;>$news[3]</a></li>";

}

?>

</ul>

</p>

</section>
Copier après la connexion

(2)Module de récupération d'actualités

Afin de faciliter la navigation des utilisateurs rapidement Pour parcourir les actualités, nous concevons une fonction de récupération d'actualités pour ce système de communiqués de presse. La récupération d'actualités signifie que l'utilisateur n'a qu'à trouver la zone de saisie de récupération d'actualités sur la page d'accueil du système de communiqués de presse, puis à saisir les mots-clés pour interroger l'actualité dans la zone de saisie de requête, puis à la soumettre à la base de données. La base de données fait correspondre les données, puis renvoie le contenu d'actualité que l'utilisateur souhaite interroger. Cette méthode de récupération est plus pratique Tant que l'actualité contient les mots-clés saisis par l'utilisateur, l'actualité correspondante sera affichée dans une liste. Par conséquent, les utilisateurs peuvent parcourir intuitivement les actualités qu’ils souhaitent parcourir, ce qui leur fait gagner du temps et évite les opérations de navigation inutiles.

Utilisez PHP pour créer un système de gestion dactualités, utilisez votre cerveau pour lapprendre ! ! ! (Y compris front et back-office)Code principal :

$sql="select * from news where title like &#39;%{$find}%&#39; order by news_id limit {$num} , $fnum";

//echo $sql;

$result=mysql_query($sql);

while($row=mysql_fetch_array($result)) {

$sqls="select name from category where category_id={$row[&#39;category_id&#39;]}";

$selected=mysql_query($sqls);

$a=mysql_result($selected,0);

$b=$row[&#39;news_id&#39;];

            echo "<tr>";

            echo "<td style=&#39;color:white;&#39;>{$a}</td>";

            echo "<td style=&#39;color:white;&#39;><a href=content.php?news_id=$b style=&#39;color:white;&#39;>{$row[&#39;title&#39;]}</td>";

            echo "</tr>";

        }
Copier après la connexion

(3)Publier le module de commentaires sur les actualités après la connexion de l'utilisateur

Pour les utilisateurs , vous pouvez vous connecter. Une fois connecté, vous pouvez continuer à parcourir les actualités correspondantes. La différence est que les utilisateurs connectés ont des autorisations plus élevées que les utilisateurs invités ordinaires. Les utilisateurs connectés peuvent publier leurs propres commentaires sur les actualités tout en parcourant le contenu des actualités. Les utilisateurs peuvent communiquer entre eux dans le tableau de commentaires. Formez une plateforme interactive.

Utilisez PHP pour créer un système de gestion dactualités, utilisez votre cerveau pour lapprendre ! ! ! (Y compris front et back-office)Code principal :

<?php header("Content-type:text/html;charset=utf-8");

    $server=@mysql_connect("localhost", "root", "")or die("数据库连接失败!");

    mysql_query("SET NAMES &#39;UTF8&#39;");

    $dblink=@mysql_select_db("news") or die("选择当前数据库失败!");

  $newsid=$_GET[&#39;news_id&#39;];

  //echo &#39;<script>alert(&#39;.$newsid.&#39;);</script>&#39;;

  $sql="select * from news where  news_id =".$newsid;

  $rs=mysql_query($sql);

  while($rows=mysql_fetch_array($rs)){

  $title = $rows[&#39;title&#39;];

  $content = $rows[&#39;content&#39;];

  $picture = $rows[&#39;picture&#39;];

  }

  $sql="select * from review where  state=&#39;已审核&#39; and news_id =".$newsid;

  $rs=mysql_query($sql);

  @$userid=$_SESSION[&#39;user_id&#39;];

?>
Copier après la connexion

(4)Module de connexion et d'enregistrement de l'utilisateur

Restreindre les autorisations des utilisateurs, le le module de connexion utilisateur est essentiel. Vous pouvez vous connecter normalement si votre compte et votre mot de passe sont corrects. Les utilisateurs ordinaires choisissent la connexion utilisateur, tandis que les administrateurs choisissent la connexion administrateur. Vous pouvez également vous inscrire en tant qu'utilisateur.

Utilisez PHP pour créer un système de gestion d'actualités, utilisez votre cerveau pour l'apprendre ! ! ! (Y compris front et back-office)

Utilisez PHP pour créer un système de gestion d'actualités, utilisez votre cerveau pour l'apprendre ! ! ! (Y compris front et back-office)

核心代码:

<p class="box_lg">

<p class="box_tit">

<a href="" class="close">x</a>

<H3>登录账号</H3>

</p>

<p class="box_con">

<form action="login.php" method="post">

<p>

<select name="usertype">

<option value="普通用户">普通用户</option>

<option value="管理员">管理员</option>

</select>

</p>

<p>

用户名:<input type="text" name="name" size="11"/><br/>

</p>

<p>

密 码 :<input type="password" name="password" size="11"/><br/>

</p>

<p class="log">

<input type="submit" name="login" value="登录">

</p>

<span>

<a href="#" id="ljzc">立即注册</a>

</span>

</form>

</p>

</p>

<p class="box_zc">

<p class="box_tit">

<a href="" class="close">x</a>

<H3>注册账号</H3>

</p>

<p class="box_con">

<form action="adduser.php" method="post">

<p>

用户名:<input type="text" name="name" size="11"/><br/>

</p>

<p>

密 码 :<input type="password" name="password" size="11"/><br/>

</p>

<p>

确认密码:<input type="password" name="repassword" size="11"/><br/>

</p>

<p class="zc">

<input type="submit" name="zhuce" value="注册">

</p>

<span>

<a href="#" id="ljdl">立即登录</a>

</span>

</form>

</p>

</p>
Copier après la connexion

(5)管理员后台新闻发布模块

新闻发布模块对于新闻发布系统来说是最主要的一个模块。本系统的新闻发布系统模块中发布的信息包括了新闻作者,新闻标题,新闻图片,新闻内容,新闻来源,新闻发布的时间以及用户点击次数等。管理员用户可以通过后台的新闻发布页面填写相关的内容,然后点击发布新闻,即可将自己的新闻发布出去。新闻发布的过程简单易行,新闻由管理员在后台直接发布,无需验证和批准直接可以在新闻发布系统的主页面上显示最新的新闻内容。

Utilisez PHP pour créer un système de gestion dactualités, utilisez votre cerveau pour lapprendre ! ! ! (Y compris front et back-office)核心代码:

<?php

include_once("functions/database.php");

get_connection();

$result_set = mysql_query("select * from category");

close_connection();

while($row = mysql_fetch_array($result_set)){

?>

     <option value="<?php echo $row[&#39;category_id&#39;];?>"><?php echo $row[&#39;name&#39;];?></option>

<?php

}

?>
Copier après la connexion

(6)管理员后台新闻管理模块

管理员将新闻发布以后,难免有出错或者需要修改的时候。因此在设计后台的时候针对此需要,我们设计了管理员后台新闻管理模块。管理模块是对已经发布出去的新闻进行修改编辑或者删除。同时也是新闻发布系统管理新闻的最基本的功能。 此权限也只能是管理员才可以对此进行操作,对于游客身份的用户和已经登录的会员用户则均不可以对此进行操作。

Utilisez PHP pour créer un système de gestion dactualités, utilisez votre cerveau pour lapprendre ! ! ! (Y compris front et back-office)核心代码:

<?php

include_once("functions/database.php");

$news_id = $_GET["news_id"];

get_connection();

$result_news = mysql_query("select * from news where news_id=$news_id");

$result_category = mysql_query("select * from category");

close_connection();

$news = mysql_fetch_array($result_news);

?>
Copier après la connexion

(7)管理员后台新闻类别添加模块

为了满足用户对新闻的分类浏览,我们设计了新闻的分类浏览功能。因此,在后台的管理中我们首先要建立管理员后台新闻类别添加的模块。管理员要发布的新闻是有一定的分类的。首先管理员要添加自己所要发布新闻的新闻分类,以便在以后发布新闻的时候可以根据已经添加的新闻分类,自然地将需要发布的新闻进行分类。同时网页中的新闻分类里也显示已发布的新闻。这样用户在针对哪一类的新闻进行浏览时,可以在第一时间看到最新的新闻。 如果网站需要宽展发布一些新类型的新闻,就可以动态的控制不同种类的新闻,可以做到新闻种类无限扩展。因此,此模块可以大大的增加动态网站的动态性,避免过的冗余操作。为管理员减少工作量,方便维护整个庞大的网站。

Utilisez PHP pour créer un système de gestion dactualités, utilisez votre cerveau pour lapprendre ! ! ! (Y compris front et back-office)

核心代码:

<?php

include_once("functions/database.php");

$category = $_POST["category"];

//$content = htmlspecialchars(addslashes($_POST["content"]));

 

$sql = "insert into category values(null,&#39;$category&#39;)";

get_connection();

mysql_query($sql);

close_connection();

echo  "该类别成功添加到数据库表中!";

?>
Copier après la connexion

(8)管理员后台新闻类别管理模块

为了满足用户对新闻的分类浏览,我们设计了无限新闻类型添加的功能。与此同时,新闻的分类管理也是必不可少的一项模块。我们针对已经添加过的新闻进行修改或者直接删除,保证管理员可以对新闻分类进行任意操作。动态的控制整个新闻发布系统的新闻分类功能。同时也满足了不同用户对不同类型的新闻浏览的要求。使得这个新闻发布系统更有实用性,更人性化的管理。

Utilisez PHP pour créer un système de gestion dactualités, utilisez votre cerveau pour lapprendre ! ! ! (Y compris front et back-office)

核心代码:

<?php

include_once("functions/database.php");

 

$category_id = $_POST["category_id"];

$name = $_POST["category_name"];

 

$sql = "update category set name=&#39;$name&#39; where category_id=$category_id";

get_connection();

mysql_query($sql);

close_connection();

echo "新闻类别修改成功!";

?>
Copier après la connexion

9)管理员后台评论审核模块

使管理员审核评论,防止存在非法或者违规的评论存在。

Utilisez PHP pour créer un système de gestion dactualités, utilisez votre cerveau pour lapprendre ! ! ! (Y compris front et back-office)

核心代码:

<?php

include_once("functions/database.php");

$review_id = $_GET["review_id"];

$sql = "update review set state=&#39;已审核&#39; where review_id=$review_id";

get_connection();

mysql_query($sql);

close_connection();

header("Location:review_list.php");

?>
Copier après la connexion

  推荐学习:《PHP视频教程》           

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:csdn.net
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal