PHPで簡易掲示板機能を実装(ソースコード添付)

烟雨青岚
リリース: 2023-04-08 19:58:01
転載
10758 人が閲覧しました

PHPで簡易掲示板機能を実装(ソースコード添付)

#php は簡単なメッセージ ボード機能を実装します

1. 原則 #簡単に言うと、データベースを作成し、データを追加し、フロントエンドに表示することを意味します。私のプログラムは単にメッセージを残してそれを表示するだけです。

最初にメッセージのフロントエンド ページを作成し、作成者、タイトル、内容を簡単に書きます。

2. インターフェース

:

PHPで簡易掲示板機能を実装(ソースコード添付)

3. メッセージを表示するインターフェース

:

PHPで簡易掲示板機能を実装(ソースコード添付)

4. コード

(1) メッセージを追加するページ

<!DOCTYPE HTML>
    <HTML>
<Head>
    <meta  http-equiv="CONTENT-TYPE" ; content="text/html"  ; charset="UTF-8">
    <title>留言</title>
    <style type="text/css">
     .message{
         margin-top:0px;
     }
     h1{
         margin-top:200px;
     }
    </style>
</Head>
<Body>
   <h1 align="center">留言板</h1>
   <div class="message">
       <form name="addform" id="addform" method="post" action="message_handle.php">
           <table type="text" align="center" border="1px,solid">
               <input type="hidden" id="id" name="id" />
            <tr>
               <td>标题</td>
               <td><input type="text" name="title" id="title"/></td>
            </tr>
            <tr>
                <td>作者</td>
                <td><input type="text" name="author" id="author"/> </td>
            </tr>
            <tr>
                <td>内容</td>
                <td><textarea name="message" id="message" cols="60" role="15"></textarea></td>
            </tr>
            <tr>
                <td><input type="submit" name="sumbit"/></td>
                <td><input type="reset" name="reset"/></td>
            </tr>
           </table>
       </form>
   </div>
</Body>
</HTML>
ログイン後にコピー

(2) メッセージのバックグラウンド処理、作成者、タイトル、コンテンツを構築されたデータベースに保存します

<?php
header("CONTENT-TYPE:text/html;charset=UTF-8");
define("HOST","127.0.0.1");
define("USERNAME","root");
define("PASSWORD","");
if($con=new mysqli(HOST,USERNAME,PASSWORD,"test")){
    echo $con->error;
}
if($con->select_db("messageboard")){
    echo $con->error;
}
if($con->query("SET NAMES utf8")){
    echo $con->error;
}
$id=$_POST["id"];
$title=$_POST["title"];
$author=$_POST["author"];
$message=$_POST["message"];
$time=date(&#39;y-m-d h:m:s&#39;);
$sql="insert into messageboard(id,title,author,message,dateline) values(&#39;$id&#39;,&#39;$title&#39;,&#39;$author&#39;,&#39;$message&#39;,&#39;$time&#39;)";
if($str=$con->query($sql)){
    echo "<script>alert(&#39;留言成功&#39;);window.location.href=&#39;show_message.php&#39;</script>";
}
else {
    echo "<script>alert(&#39;留言失败&#39;);window.location.href=&#39;messageboard.php&#39;</script>";
}
?>
ログイン後にコピー

(3) 以下はメッセージを表示するためのページ コードです

<?php
header("CONTENT-TYPE:text/html;charset=UTF-8");
define("HOST","127.0.0.1");
define("USERNAME","root");
define("PASSWORD","");
if($con=new mysqli(HOST,USERNAME,PASSWORD,"test")){
    echo $con->error;
}
if($con->select_db("messageboard")){
    echo $con->error;
}
if($con->query("SET NAMES utf8")){
    echo $con->error;
}
$sql="select * from messageboard ORDER BY dateline DESC ";
$str=$con->query($sql);
if($str && mysqli_num_rows($str)){
    while($row= mysqli_fetch_assoc($str)){
        $data[]=$row;
    }
}
?>
<!DOCTYPE HTML>
<HTML>
<Head>
    <meta  http-equiv="CONTENT-TYPE" ; content="text/html"  ; charset="UTF-8">
    <title>留言板</title>
    <style type="text/css">
    </style>
</Head>
<Body>
<div>
    <?php
    if(empty($data)){
        echo "当前没有留言";
    }
    else{
    foreach($data as $value) {
    ?>
    <table cellpadding="2" cellspacing="8" align="center" border="1px,solid">
        <tr>
            <td>标题</td>
            <td><?php echo $value[&#39;title&#39;]; ?></td>
        </tr>
        <tr>
            <td>作者</td>
            <td><?php echo $value[&#39;author&#39;]; ?></td>
        </tr>
        <tr>
            <td>内容</td>
            <td><?php echo $value[&#39;message&#39;]; ?></td>
        </tr>
        <tr>
            <td><?php echo $value[&#39;dateline&#39;];;?></td>
        </tr>
    </table>
</div>
<?php
 }
}
?>
</Body>
</HTML>
ログイン後にコピー

5. 問題が発生しました

冒頭の表示ページにデータが表示できませんでした。 SQL に間違ったクエリが書かれています。メソッドは次のように書かれています:

select * from message where dateline desc;
ログイン後にコピー

条件がある場合はクエリを実行するために where を使用する必要があります。例:

select * from message where dateline=$date;
ログイン後にコピー

私のプログラムは前のページからこのページにデータを転送しないため、すべてのデータを時間順に並べ替えてリストするには次のメソッドのみを使用できます。

select * from message order by dateline;
ログイン後にコピー

読んでいただきありがとうございます。上記のコードの欠点を指摘してください。何か得られることを願っています。

この記事は、https://blog.csdn.net/jeak2015/article/details/53440522

から転載されたものです。推奨チュートリアル: 「

PHP チュートリアル

以上がPHPで簡易掲示板機能を実装(ソースコード添付)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:csdn.net
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート