#php は簡単なメッセージ ボード機能を実装します
1. 原則 #簡単に言うと、データベースを作成し、データを追加し、フロントエンドに表示することを意味します。私のプログラムは単にメッセージを残してそれを表示するだけです。
最初にメッセージのフロントエンド ページを作成し、作成者、タイトル、内容を簡単に書きます。
2. インターフェース:
3. メッセージを表示するインターフェース:
(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>
<?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('y-m-d h:m:s');
$sql="insert into messageboard(id,title,author,message,dateline) values('$id','$title','$author','$message','$time')";
if($str=$con->query($sql)){
echo "<script>alert('留言成功');window.location.href='show_message.php'</script>";
}
else {
echo "<script>alert('留言失败');window.location.href='messageboard.php'</script>";
}
?>
<?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['title']; ?></td>
</tr>
<tr>
<td>作者</td>
<td><?php echo $value['author']; ?></td>
</tr>
<tr>
<td>内容</td>
<td><?php echo $value['message']; ?></td>
</tr>
<tr>
<td><?php echo $value['dateline'];;?></td>
</tr>
</table>
</div>
<?php
}
}
?>
</Body>
</HTML>
冒頭の表示ページにデータが表示できませんでした。 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 サイトの他の関連記事を参照してください。