連接數據庫
下面是最簡單的PHP連接MySQL數據庫的代碼:
代碼如下 復制代碼 <?php其中mysql_connect()連接函數,localhost代表數據庫服務器的地址,root是MySql數據庫用戶名,password是MySql數據庫的密碼。使用時改成自己的即可。
為了更方便以後使用,將連接代碼規范化一下:
代碼如下 復制代碼 <?php用三個變量來讀取服務器地址、用戶名和密碼,方便以後進行表單讀取和賦值等
建立數據庫
#建立數據庫代碼
代碼如下 復制代碼<?php
include ("conn.php");
$link_db='link_system';
//設置要建立的數據庫的名字,一定不能跟已有的數據庫名稱相同
if ($link)
{
echo "connect ok!<br />";
if (mysql_query("create database ".$link_db,$link))
{
echo "database created!<br />";
}
else
{
echo "database create fail!";
}
}
else
{
echo "connect error!";
}
?>
建立了link_system數據庫之後,還需要建立表格。
#建立數據庫表格
//設置需要建設的表格為link_table,下面是需要建立的表名,用來存儲不同的數據,可以根據自己的需要來設置。
link_id 數據的id
link_name 友鏈名稱
link_url 友鏈網址
link_detail 簡介
link_contact 聯系方式
link_show 是否顯示
link_order 排列順序
link_sort 分類
代碼如下 復制代碼
//因為我們友鏈表中有分類,所以需要建立一個分類表link_sorts,我的設想是存友鏈顯示的位置,比如首頁或者頻道頁、內頁等。
sort_id 數據id
sort_name 分類名稱
建立表格的完整PHP代碼如下:
<?php
//選擇操作的數據庫
mysql_select_db($link_db,$link);
//建立表格
$link_table = "create table link_table
(
link_id int unsigned primary key not null auto_increment,
link_name varchar(20) not null,
link_url varchar(50) not null,
link_detail varchar(100) not null,
link_contact varchar(100) not null,
link_show int unsigned not null,
link_order int unsigned not null,
link_sort int unsigned not null
)";
$sort_table = "create table sort_table
(
sort_id int unsigned primary key not null auto_increment,
sort_name varchar(20) not null
)";
//執行建表操作
if(!mysql_query($link_table,$link)){
echo "Create link_table error :" . mysql_error() . "<br />";
}
else {
echo "link_table Created!" . "<br />";
}
if(!mysql_query($sort_table,$link)){
echo "Create sort_table error :" . mysql_error() . "<br />";
}
else {
echo "sort_table Created!" . "<br />";
}
//執行完畢關閉數據庫連接
mysql_close($link);
?>
如果執行成功,則建立數據庫完畢!開始下一步就是添加數據了
添加數據
首先建立一個表格,用來填寫需要向MySQL數據庫寫入的數據:
代碼如下 復制代碼#寫入數據庫
//insert.php
<form action="insert_ok.php" method="post">
網站名稱: <input type="text" name="site_name" />
<br />
網站鏈接: <input type="text" value="http://" name="site_url" />
<br />
簡介: <input type="text" value="無" name="site_detail" />
<br />
聯系方式: <input type="text" name="site_contact" />
<br />
排序: <input type="text" value="1" name="site_order" />
<br />
分類: <input type="text" value="1" name="site_sort" />
<br />
是否顯示: <input name="site_show" type="checkbox" id="checkbox" value="1" checked="checked" />
<br />
<input type="submit" />
</form>
這裡其他的都是用文本框輸入,而是否顯示使用復選框來實現,默認選中。
執行寫入的程序頁面
//insert_ok.php
<?php
include ("conn.php");
//讀取上個頁面中表單中的數據
$link_name=$_POST[site_name];
$link_url=$_POST[site_url];
$link_contact=$_POST[site_contact];
$link_detail=$_POST[site_detail];
$link_order=$_POST[site_order];
$link_sort=$_POST[site_sort];
$link_show=$_POST[site_show];
if (!$link_show=="1") $link_show="0";
//復選框是否選中,如果沒有選中則賦值為0
mysql_select_db("link_system", $link); //選擇數據庫link_system
if($_POST)
{
$sql = "INSERT INTO link_table (link_name,link_url,link_contact,link_detail,link_order,link_sort,link_show) VALUES ('$link_name','$link_url','$link_contact','$link_detail','$link_order','$link_sort','$link_show')";
if(!mysql_query($sql,$link))
{
echo "添加數據失敗:".mysql_error();
}
else
{
echo "添加數據成功!";
echo $_POST[site_name]."<br>".$_POST[site_url]."<br>".$_POST[site_contact]."<br>".$_POST[site_detail]."<br>".$_POST[site_order]."<br>".$_POST[site_sort]."<br>".$_POST[site_show];
}
}
?>
如果執行成功,則添加友鏈數據完成,至於分類暫時先不添加,到後期再將分類加入裡面。下一步則是顯示數據、編輯數據和刪除數據的實現了。
顯示寫入數據庫數據
規劃一下我們要顯示的內容吧,首先因為是友鏈展示頁面,則需要顯示友鏈的標題、友鏈的錨鏈接、友鏈的描述,並且安裝我們添加友鏈時候自定義的順序來排列。
//友情鏈接展示頁面
view.php
<?php
include ("conn.php");
mysql_select_db("link_system", $link); //選擇數據庫
$exec = "SELECT * FROM link_table order by link_order";
//SQL查詢語句,按照自定義字段的排序來查詢
mysql_query("SET link_name GB2312");
$result = mysql_query($exec, $link); //獲取數據集
if(!$result){die("Valid result!");}
echo "<p>顯示效果:</p>";
while($rs = mysql_fetch_array($result))
{
$name=$rs['link_name'];
$url=$rs['link_url'];
$detail=$rs['link_detail'];
$show=$rs['link_show'];
if ($detail == "無") $alt=$name;
else $alt=$detail;
if ($show == "1") echo "<a href="$url" title=$alt target=_blank>$name</a><br>";
}
mysql_free_result($result); //關閉數據集
?>
這樣就把友情鏈接顯示出來了,後期根據自己需要的效果,重新調整。