ホームページ >バックエンド開発 >PHPチュートリアル >PHP は Mysql データベースを組み合わせてメッセージ ボード機能を実装します。mysql メッセージ ボード_PHP チュートリアル
まずメッセージ ボードのレンダリングをお見せします:
conn.php データベースに接続します;
addmsg.php php はページからメッセージ関連のコンテンツを読み取り、それを保存します (Insert )Database;
listmsg.php データベースからメッセージの内容を読み取り、ページに表示します。
1. データベース テーブルの構造を確立する準備をします は、phpMyAdmin のテーブル構造です。以下のスクリーンショット:
テーブル作成構文
SQL CREATE TABLE 语法 CREATE TABLE 表名称 ( 列名称1 数据类型, 列名称2 数据类型, 列名称3 数据类型, .... )
2.php は mysql データベースに接続し、データベースの 1 つを選択します 。私は以下の bbs データベース (ps の前に作成) を選択しました。使用するいくつかの PHP ライブラリ関数を紹介します。
①mysql_connect("localhost", "root", "")php は mysql に接続します。パラメータは、mysql アドレス (localhost はローカル マシンを表します)、ユーザー名、パスワードです。
②mysql_select_db($dbName, $conn);mysql には多数のデータベースが存在する可能性があるため、次の操作ではデータベースの 1 つを選択する必要があります。
③mysql_query(query,connection)パラメータ: クエリは、mysql に実行させたいステートメントを表します
conn.php
<span style="font-family:Comic Sans MS;font-size:14px;"><?php include("head.php"); $dbName = "bbs"; $conn = @ mysql_connect("localhost", "root", "") or die("数据库链接错误"); $flag = mysql_select_db($dbName, $conn); mysql_query("set names 'GBK'"); //使用GBK中文编码; function toHtmlcode($content) { return $content = str_replace("\n","<br>",str_replace(" ", " ", $content)); } ?></span>toHtmlcode カスタム関数は、文字列 ( n) を入力するものです。 HTML では改行に置き換えます
、HTML ではスペースをスペースに置き換えます ( )
関数の 1 つは次のように紹介されています
文法
str_replace(find,replace,string,count)
参数 | 描述 |
---|---|
find | 必需。规定要查找的值。 |
replace | 必需。规定替换 find 中的值的值。 |
string | 必需。规定被搜索的字符串。 |
count | 可选。一个变量,对替换数进行计数。 |
addmsg.php
<span style="font-family:Comic Sans MS;font-size:14px;"><?php // 引用之前写好的连接数据库文件 include("conn.php"); if(@$_POST['submit']){ $sql = "insert into message (id,user,title,content,lastdate)" . "values ( '','$_POST[userName]','$_POST[title]','$_POST[content]',now())"; mysql_query($sql); echo "添加成功"; } ?> <SCRIPT language=javascript> function CheckPost() { if (myform.userName.value=="") { alert("请填写用户名"); myform.user.focus(); return false; } if (myform.title.value.length<5) { alert("标题不能少于5个字符"); myform.title.focus(); return false; } if (myform.content.value=="") { alert("必须要填写留言内容"); myform.content.focus(); return false; } } </SCRIPT> <form action="addmsg.php" method="post" name = "myform" onsubmit="return CheckPost();"> 用名:<input type="text" size="10" name="userName" /><br/> 标题:<input type="text" name="title" /><br/> 内容:<textarea name="content" cols="60" rows="9" ></textarea><br/> <input type="submit" name="submit" value="提交留言" /> </form> </span>
include 是引入conn.php,类似于c语言中include
$_POST 变量是一个数组,此变量用于收集来自 method="post" 的表单中的值,post发出的键值对存于此$_POST数组中$_POST['submit'] 取键submit的值,如果触发submit,也就是CheckPost返回为true时,会post值,显然$_POST['submit']不为空,非空即为真,那么就执行if里面的插入语句。使留言内容保存在mysql数据库中。
listmsg.php
<span style="font-family:Comic Sans MS;font-size:14px;"><?php include("conn.php"); ?> <table width=500 border="0" align="center" cellpadding="5" cellspacing="1" bgcolor="#add3ef"> <?php $sql = "SELECT * FROM message order by lastdate desc"; $query = mysql_query($sql); while($row = mysql_fetch_array($query)){ ?> <tr bgcolor="#eff3ff"> <td><b><big> 标题:<?= $row['title']?></big><b/> <b><sub> 用户:<?= $row['user']?></sub></b></td> </tr> <tr bgColor="#ffffff"> <td>内容:<?= toHtmlcode($row['content'])?></td> </tr> <?php } ?> </table> </span>
php与html代码混编看起来还是比较乱的。
php从mysql中获取留言内容,并把它显示在页面上,我这里显示在table里。主要代码就上面这些。