ホームページ バックエンド開発 PHPチュートリアル PHPで簡単なブログを作る方法

PHPで簡単なブログを作る方法

Sep 08, 2017 am 09:37 AM
php ブログ

最近、PHPのコードを見る時間がありました。

最初は統合環境です

まず、phpMyAdminを通してblogテーブルを作成します。

純粋なインターフェース操作であり、プロセスは比較的単純です。 id が主キーであり、フィールドが自動的にインクリメントされることを示すように auto_increnent オプションが設定されていることに注意してください。空のとき。他のフィールドはよりカジュアルで、種類と長さに注意してください。

データ接続を作成するの から の

----- ディレクトリに

conn.php ファイルを作成します。

<?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;");
?>
ログイン後にコピー

Mysql

のデフォルトのユーザー名は

root

、パスワードは空です ここで作成したblogtestのライブラリにあるので接続する必要があります。 テスト ライブラリ。

ブログを追加

add.php

ファイルを作成します。 ./wamp/www/blog/ ディレクトリ。

<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>
ログイン後にコピー

このコードは 2 つの部分に分かれており、上の部分は

PHP

コードで、

include (または require) ステートメントは、ファイル / Code / タグを指定し、include ステートメントを使用してファイルにコピーしました。 そして、フォーム内のname='sub'の内容が空でないと判断されると、フォームの内容を取得した上で

$sql

ステートメントが実行され、 null id を意味し、それは空です (自動的に増加します)。 now() は現在の日付を取得することを意味し、 $title$con は送信されたコンテンツを取得しますフォーム内のユーザー。最後に、挿入が成功するためのプロンプトを eche します。 下の部分は簡単なHTML

コードで、

ブログフォームを送信できる機能を実装するために使用されます。

创建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
};?>
ログイン後にコピー

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

  首先是一个搜索表单,通过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>
ログイン後にコピー

  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>
ログイン後にコピー

  编辑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!";
}?>
ログイン後にコピー

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

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

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

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

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

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

以上がPHPで簡単なブログを作る方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Dec 24, 2024 pm 04:42 PM

PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

CakePHP データベースの操作 CakePHP データベースの操作 Sep 10, 2024 pm 05:25 PM

CakePHP でデータベースを操作するのは非常に簡単です。この章では、CRUD (作成、読み取り、更新、削除) 操作について理解します。

CakePHP の日付と時刻 CakePHP の日付と時刻 Sep 10, 2024 pm 05:27 PM

Cakephp4 で日付と時刻を操作するには、利用可能な FrozenTime クラスを利用します。

CakePHP ファイルのアップロード CakePHP ファイルのアップロード Sep 10, 2024 pm 05:27 PM

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP について話し合う CakePHP について話し合う Sep 10, 2024 pm 05:28 PM

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

CakePHP バリデータの作成 CakePHP バリデータの作成 Sep 10, 2024 pm 05:26 PM

Validator は、コントローラーに次の 2 行を追加することで作成できます。

CakePHP のロギング CakePHP のロギング Sep 10, 2024 pm 05:26 PM

CakePHP へのログインは非常に簡単な作業です。使用する関数は 1 つだけです。 cronjob などのバックグラウンド プロセスのエラー、例外、ユーザー アクティビティ、ユーザーが実行したアクションをログに記録できます。 CakePHP でのデータのログ記録は簡単です。 log()関数が提供されています

PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 Dec 20, 2024 am 11:31 AM

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、

See all articles