學編程,我覺得最重要的是動手實踐.今天第一天學php(做為現在的主流開發語言)~~`~為了熟悉下這種語言~~~我開始自己編一個php(做為現在的主流開發語言)+MySQL(和PHP搭配之最佳組合)的留言本.
從易到難`~~~先由簡單的開始.功能以後慢慢完善.
留言本最基本的功能就是:
1:用戶寫留言
2:把數據寫入數據庫
3:顯示所有留言
下面就開始制作我的留言本
首先在php(做為現在的主流開發語言)MYADMIN下建立一 guest_book數據庫 然後在該數據庫下建立一個contents的表 該表下建立兩個字段
分別為 name 和 content
SQL語句如下:
CREATE TABLE `contents` (
`id` int(11) NOT NULL auto_increment,
`name` varchar(20) NOT NULL default "no name",
`content` mediumtext NOT NULL,
Prima(最完善的虛擬主機管理系統)RY KEY (`id`)
) TYPE=MyISAM AUTO_INCREMENT=6
好了數據庫建好了 ~~`下面開始寫程序了
該程序包含三個頁面post.htm(留言提交頁面) index.php(做為現在的主流開發語言)(留言顯示頁面) updata.php(做為現在的主流開發語言)(把數據寫入數據庫的頁面)
post.htm代碼如下:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>留言本</title>
</head>
<body>
<form action="updata.php(做為現在的主流開發語言)" method="post" name="name1">
姓名:<input type="text" name="user_name"><br>
留言:<textarea name="post_contents" rows="10" cols="50"></textarea>
<input type="submit">
</form>
</body>
</html>
updata.php(做為現在的主流開發語言)頁面代碼如下:
<?
$name=$_POST[user_name];
$content=$_POST[post_contents];
$conn=MySQL(和PHP搭配之最佳組合)_connect("localhost:6033", "root", "");
MySQL(和PHP搭配之最佳組合)_query("set names utf-8"); //解決中文亂碼問題
MySQL(和PHP搭配之最佳組合)_select_db("guest_book");
$exec="insert into contents (name,content) values (".$_POST[user_name].",".$_POST[post_contents].")";
$result=MySQL(和PHP搭配之最佳組合)_query($exec);
?>
index.php(做為現在的主流開發語言)頁面代碼如下:
<?
$conn=MySQL(和PHP搭配之最佳組合)_connect ("localhost:6033", "root", ""); //打開MySQL(和PHP搭配之最佳組合)服務器連接
MySQL(和PHP搭配之最佳組合)_select_db("guest_book"); //鏈接數據庫
MySQL(和PHP搭配之最佳組合)_query("set names utf-8"); //解決中文亂碼問題
$exec="select * from contents"; //sql語句
$result=MySQL(和PHP搭配之最佳組合)_query($exec); //執行sql語句,返回結果
while($rs=MySQL(和PHP搭配之最佳組合)_fetch_object($result))
{
echo "<table><tr><td>姓名:".$rs->name."</td></tr>";
echo "<tr><td>留言:".$rs->content."</td></tr></table><br/>";
}?>
至於分頁,頁面轉向等功能暫時不用上去.為得就是使程序盡量精簡.麻雀雖小.但是留言本的核心功能全在這裡了.
其中還需要再多說幾句
$conn=MySQL(和PHP搭配之最佳組合)_connect ("localhost:6033", "root", "");
這一句很重要 一開始我用的是 $conn=MySQL(和PHP搭配之最佳組合)_connect ("127.0.0.1", "", "");
怎麼弄都不見數據進數據庫去~~~~但是又沒報錯~~後來看了半天才知道 原來哪個127的地方應該在php(做為現在的主流開發語言)MYADMIN裡看服務器名一擊數據庫端口是什麼~~~還有ROOT那裡就是MySQL(和PHP搭配之最佳組合)用戶名了,後面的是密碼
還有個問題就是 漢字亂碼問題
在$result=MySQL(和PHP搭配之最佳組合)_query($exec); 語句前面加上MySQL(和PHP搭配之最佳組合)_query("set names gb2312");或者MySQL(和PHP搭配之最佳組合)_query("set names utf-8");
可疑防止提交進數據庫的漢字以亂碼形式存放在數據庫中 以及防止 從數據庫中查詢出來的包含漢字的數據以亂碼顯示