Maison développement back-end tutoriel php Comment créer un blog simple en PHP

Comment créer un blog simple en PHP

Sep 08, 2017 am 09:37 AM
php 博客

Récemment, j'ai eu le temps de regarder du code PHP.

Le premier est l'environnement intégré

Premier passage, phpMyAdminCréer un blogTableau.

Fonctionnement d'interface pure, le processus est relativement simple, il est à noter que id est la clé primaire, et définissez l'option auto_increntent pour indiquer que le champ s'incrémentera automatiquement lorsqu'il est vide. D'autres domaines sont plus décontractés, faites simplement attention au type et à la longueur.

Créer une connexion de données                                                Créé sous le répertoire 🎜>./wamp/www/blog

conn.php fichier.

mysql

Le nom d'utilisateur par défaut est

root
<?php
    @mysql_connect("127.0.0.1:3306","root","") or die("mysql数据库连接失败");
    @mysql_select_db("test")or die("db连接失败");mysql_query("set names &#39;gbk&#39;");
?>
Copier après la connexion

, le mot de passe est vide, créé ici le blog est dans la bibliothèque test, il doit donc être connecté au test bibliothèque. <<> Ajouter Blog

dans ./ wamp/www/blog/ Créez le fichier add.php

dans le répertoire . Ce code est divisé en deux parties, la partie supérieure est le code

PHP


,

<a href="index.php"><B>index</B></a>
<a href="add.php"><B>add blog</B></a>
<hr>
<?php
    include("conn.php"); //引入连接数据库
    if (!empty($_POST[&#39;sub&#39;])) {    
        $title = $_POST[&#39;title&#39;];  //获取title表单内容
        $con = $_POST[&#39;con&#39;];      //获取contents表单内容
        $sql= "insert into blog values(null,&#39;0&#39;,&#39;$title&#39;,now(),&#39;$con&#39;)";    
        mysql_query($sql);    
        echo "insert success!";
}?>
<form action="add.php" method="post">
    title   :<br>
    <input type="text" name="title"><br><br>
    contents:<br>
    <textarea rows="5" cols="50" name="con"></textarea><br><br>
    <input type="submit"  name="sub" value="submit">
</form>
Copier après la connexion
include L'instruction

(ou require) obtiendra tout le texte présent dans le fichier spécifié /code / et copiez-les dans le fichier à l'aide de l'instruction include . Ensuite, s'il est déterminé que le contenu de name='sub' dans le formulaire n'est pas vide, le contenu du formulaire sera obtenu, et alors $sql sera exécuté

instruction,

null signifie que id est vide (incrémenté), now() signifie prendre le jour en cours, $title et $con prendre le contenu soumis par l'utilisateur dans le formulaire. Enfin eche invite à une insertion réussie. La partie inférieure est un simple code HTML, utilisé pour implémenter une fonction de soumission de formulaire

blog

.

创建blog的首页

./wamp/www/blog/目录下创建index.php文件。

<a href="index.php"><B>index</B></a>
<a href="add.php"><B>add blog</B></a>
<br><br>
<form action="" method="get" style=&#39;align:"right"&#39;>
    <input type="text" name="keys" >
    <input type="submit" name="subs" >
</form>
<hr>
<?php
    include("conn.php"); //引入连接数据库
       if (!empty($_GET[&#39;keys&#39;])) {        
       $key = $_GET[&#39;keys&#39;];        
       $w = " title like &#39;%$key%&#39;";
    }else{        
    $w=1;
    }    
    $sql ="select * from blog where $w order by id desc limit 5";    
    $query = mysql_query($sql);    
    while ($rs = mysql_fetch_array($query)) {
?>
<h2>title: <a href="view.php?id=<?php echo $rs[&#39;id&#39;]; ?>"><?php echo $rs[&#39;title&#39;]; ?></a>
    | <a href="edit.php?id=<?php echo $rs[&#39;id&#39;]; ?>">edit</a> 
    | <a href="del.php?id=<?php echo $rs[&#39;id&#39;]; ?>">delete</a> |
</h2>
<li>date: <?php echo $rs[&#39;data&#39;]; ?></li>
<!--截取内容展示长度-->
<p>contents:<?php echo iconv_substr($rs[&#39;contents&#39;],0,30,"gbk"); ?>...</p>  
<hr>
<?php
};?>
Copier après la connexion

  该页面包含有的功能还是比较多的。

  首先是一个搜索表单,通过if判断搜索表单的内容是否为空,如果不为空,通过输入关键字匹配文章的标题并显示结果;如果为空查询所有blog内容,并循环显示每一篇文章的标题、日期、正文。点击标题会链接到该篇blog的详细页面。每一篇文章提供“编辑”和“删除”功能。

  mysql_query()用于执行sql语句。mysql_fetch_arry()将返回的数据生成数组,这样就可以像操作数组一样,操作数据库中的每一条数据了。

  然后是正文的显示,通过 iconv_substr() 函数提取正文前30个字符。

查看blog

./wamp/www/blog/目录下创建view.php文件。

<a href="index.php"><B>index</B></a>
<a href="add.php"><B>add blog</B></a>
<hr>
<?php
include("conn.php"); //引入连接数据库
    if (!empty($_GET[&#39;id&#39;])) {        
    $id = $_GET[&#39;id&#39;];        
    $sql ="select * from blog  where id=&#39;$id&#39; ";    
        $query = mysql_query($sql);        
        $rs = mysql_fetch_array($query);        
        $sqlup = "update blog set hits=hits+1 where id=&#39;$id&#39;";        
        mysql_query($sqlup);
    }?>
<h2>title: <?php echo $rs[&#39;title&#39;];?> </h2>
<h3>date: <?php echo $rs[&#39;data&#39;];?>  
click number: <?php echo $rs[&#39;hits&#39;]; ?></h3>
<hr>
<p>contents:<?php echo $rs[&#39;contents&#39;]; ?></p>
Copier après la connexion

  blog的正文实现比较简单,通过get请求获取blogid,然后通过sql语句将该id对应的标题、日期和正文查询出来并显示。

  并外一个小功能是显示了一个简单的计数器,每刷新页面,点击数加1

编辑blog

./wamp/www/blog/目录下创建edit.php文件。

<a href="index.php"><B>index</B></a>
<a href="add.php"><B>add blog</B></a>
<hr>
<?php
    include("conn.php"); //引入连接数据库
//获取数据库表数据if (!empty($_GET[&#39;id&#39;])) {    
    $edit = $_GET[&#39;id&#39;];    
    $sql = "select * from blog where id=&#39;$edit&#39;";    
    $query = mysql_query($sql);    
    $rs = mysql_fetch_array($query);
}//更新数据库表数据if (!empty($_POST[&#39;sub&#39;])) {    
        $title = $_POST[&#39;title&#39;];  //获取title表单内容
    $con = $_POST[&#39;con&#39;];      //获取contents表单内容
    $hid = $_POST[&#39;hid&#39;]; 
    $sql= "update blog set title=&#39;$title&#39;, contents=&#39;$con&#39; where id=&#39;$hid&#39; ";    
    mysql_query($sql);    
    echo "<script>alert(&#39;update success.&#39;);location.href=&#39;index.php&#39;</script>";
}?>
<form action="edit.php" method="post">
    <input type="hidden" name="hid" value="<?php echo $rs[&#39;id&#39;];?>">
    title   :<br>
    <input type="text" name="title" value="<?php echo $rs[&#39;title&#39;];?>">
    <br><br>
    contents:<br>
    <textarea rows="5" cols="50" name="con" ><?php echo $rs[&#39;contents&#39;];?></textarea><br><br>
    <input type="submit"  name="sub" value="submit">
</form>
Copier après la connexion

  编辑blog的功能相对复杂一些。分两部操作,第一步先将blog的标题和正文查询出来,并显示到输入框。第二步将编辑好的内容再更新到数据库中。

删除blog

./wamp/www/blog/目录下创建del.php文件。

<a href="index.php"><B>index</B></a>
<a href="add.php"><B>add blog</B></a>
<hr>
<?php    
    include("conn.php"); //引入连接数据库
    if (!empty($_GET[&#39;id&#39;])) {        
             $del = $_GET[&#39;id&#39;];  //删除blog
        $sql= "delete from blog where id=&#39;$del&#39; ";        
        mysql_query($sql);        
        echo "delete success!";
}?>
Copier après la connexion

   最后是实现blog的删除功能,通过id将该条blog的查询出来并显示。

 因为所有页面没有使用前端样式有美化,很丑就不贴图了。功能还算完美。在此记录,算做PHP学习的整理。

=======================================================

另外,虽然每个语言都有优缺点,这里还是忍不住要吐槽一下PHP的两个不好之处。

1、符号不好写, “$” 、“ ->” 、 “=>”。这些符号虽然并没有增加代码语法的理解难度。但敲起来具恶心。每次在打“$”符号的时候,都要眼看键盘按着shift键找4在哪儿。

2、phphtml的混编在我看来也不是太优雅。

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!

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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Guide d'installation et de mise à niveau de PHP 8.4 pour Ubuntu et Debian Guide d'installation et de mise à niveau de PHP 8.4 pour Ubuntu et Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 apporte plusieurs nouvelles fonctionnalités, améliorations de sécurité et de performances avec une bonne quantité de dépréciations et de suppressions de fonctionnalités. Ce guide explique comment installer PHP 8.4 ou mettre à niveau vers PHP 8.4 sur Ubuntu, Debian ou leurs dérivés. Bien qu'il soit possible de compiler PHP à partir des sources, son installation à partir d'un référentiel APT comme expliqué ci-dessous est souvent plus rapide et plus sécurisée car ces référentiels fourniront les dernières corrections de bogues et mises à jour de sécurité à l'avenir.

CakePHP travaillant avec la base de données CakePHP travaillant avec la base de données Sep 10, 2024 pm 05:25 PM

Travailler avec la base de données dans CakePHP est très simple. Nous comprendrons les opérations CRUD (Créer, Lire, Mettre à jour, Supprimer) dans ce chapitre.

Date et heure de CakePHP Date et heure de CakePHP Sep 10, 2024 pm 05:27 PM

Pour travailler avec la date et l'heure dans cakephp4, nous allons utiliser la classe FrozenTime disponible.

Téléchargement de fichiers CakePHP Téléchargement de fichiers CakePHP Sep 10, 2024 pm 05:27 PM

Pour travailler sur le téléchargement de fichiers, nous allons utiliser l'assistant de formulaire. Voici un exemple de téléchargement de fichiers.

Discuter de CakePHP Discuter de CakePHP Sep 10, 2024 pm 05:28 PM

CakePHP est un framework open source pour PHP. Il vise à faciliter grandement le développement, le déploiement et la maintenance d'applications. CakePHP est basé sur une architecture de type MVC à la fois puissante et facile à appréhender. Modèles, vues et contrôleurs gu

CakePHP créant des validateurs CakePHP créant des validateurs Sep 10, 2024 pm 05:26 PM

Le validateur peut être créé en ajoutant les deux lignes suivantes dans le contrôleur.

Journalisation CakePHP Journalisation CakePHP Sep 10, 2024 pm 05:26 PM

Se connecter à CakePHP est une tâche très simple. Il vous suffit d'utiliser une seule fonction. Vous pouvez enregistrer les erreurs, les exceptions, les activités des utilisateurs, les actions entreprises par les utilisateurs, pour tout processus en arrière-plan comme cronjob. La journalisation des données dans CakePHP est facile. La fonction log() est fournie

Comment configurer Visual Studio Code (VS Code) pour le développement PHP Comment configurer Visual Studio Code (VS Code) pour le développement PHP Dec 20, 2024 am 11:31 AM

Visual Studio Code, également connu sous le nom de VS Code, est un éditeur de code source gratuit – ou environnement de développement intégré (IDE) – disponible pour tous les principaux systèmes d'exploitation. Avec une large collection d'extensions pour de nombreux langages de programmation, VS Code peut être c

See all articles