上週就寫了個數據分頁顯示/及遊客留言板,目前主要關注javascript這塊。。javascript
index.php:php
<!DOCTYPE html>css
<html>html
<head>java
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">mysql
<title><!--取得執行 SELECT 語句時、被影響是記錄及字段數目。-->分頁預覽----留言板</title>sql
<style type="text/css">數據庫
</style>數組
</head>服務器
<body>
<?php
/*
// put your code here
$link = mysql_connect( "localhost", "root" , "123@qwe") or die("沒法建立鏈接"); //當沒法鏈接成功時,若不想在網頁上出現錯誤消息, 在mysql_connect()前面加@;
// echo '成功鏈接數據庫';
$charset = mysql_client_encoding(); //取默認字符集名稱
echo "最後打開的數據鏈接所使用的字符集名稱:$charset;"."<br/>";
echo "mysql 客戶端程序庫的版本:" . mysql_get_client_info(); //客戶端程序庫的版本
// echo '$link 鏈接主機爲:' . mysql_get_host_infor($link);//ERROR
mysql_close($link); //關閉數據庫*/
/*
$link = mysql_connect("localhost", "root", "123@qwe") or die("建立數據庫失敗");
if (mysql_create_db("test_databases"))//mysql_create_db建立數據庫 ;//mysql_drop_db 刪除數據庫
{
echo ("成功建立指定的數據庫");
}
else
{
echo "沒法建立指定的數據庫";
}
mysql_close($link);
* */
/*
$link = mysql_connect("localhost", "root", "123@qwe") or die("沒法建立數據庫<br/>" . mysql_error());
$db_selected = @mysql_select_db("$friend", $link) or die ("沒法打開 friend 數據庫<br/>" . mysql_error($link));
mysql_close($link);*/
//執行SQL命令 使用mysql_query()函數執行SQL命令
/*
$link = mysql_connect("localhost", "root", "123@qwe") or die ("沒法打開 friend 數據庫<br/>" . mysql_error($link));
mysql_query("SET NAMES utf8");
$db_selected = mysql_select_db("friend") or die ("沒法打開 friend 數據庫<br/>" . mysql_error($link));
echo "成功打開friend數據庫";
$sql = "SELECT * FROM FRIEND_CLUB WHERE name = '小燕子'";
$result = mysql_query($sql); //$result返回值爲資源標識符,指向查詢結果。
// $execute_sql("friend", "SELECT * FROM FRIEND_CLUB WHERE name = '小燕子'", $link);
mysql_close();*/
/*START*/
/*part-1*/
/*
require_once("dbtools.inc.php") ;
$link = create_connection();
$sql = "SELECT * FROM friend_club where number = '熱愛小品' ";
$result = execute_sql("friend", $sql, $link); //execute_sql用來對數據庫執行select語句
echo "number = ’熱愛小品‘ 的記錄有" .mysql_num_rows($result) . "條"; //mysql_num_rows被篩選出來的記錄數
echo ". 包含" . mysql_num_fields( $result) . "個字段。"; //mysql_num_fields被帥選出來的字段數
$mysql_close($link);*/
/*part-2*/
// require_once("dbtools.inc.php");
// $link = create_connection();
// $sql = "select * from friend_club where number = '熱愛小品'";
// $result = execute_sql("friend", $sql, $link);
/*part-3*/
/*
echo "<table width='400' border='1'><tr align='center'>";
echo "<td>字段名</td><td> 數據類型</td><td>字段長度</td></tr>";
$i = 0;
while ($i < mysql_num_fields($result))
{
echo "<tr>";
echo "<td>" .mysql_field_name($result, $i) ."</td>";
echo "<td>" .mysql_field_type($result,$i) ."</td>";
echo "<td>" .mysql_field_len($result, $i) ."</td>";
echo "</tr>";
$i++;
}
echo "</table>";
mysql_close($link);
*/
/*part-4顯示查詢結果的全部記錄*/
/*
echo "<table border='1' align='center'><tr align='center'>";
for ($i = 0;$i<mysql_num_fields($result);$i++)
//顯示字段名
echo "<td>" . mysql_fetch_field($result, $i)->name."</td>";
echo "</tr>";
for ($j = 0;$j<mysql_num_rows($result); $j++)
//顯示字段內容
{
echo "<tr>";
for ($k = 0; $k<mysql_num_fields($result); $k++)
echo "<td>" .mysql_result($result, $j, $k)."</td>";
echo "</tr>";
}
echo "</table>";
mysql_free_result($result);//釋放內存
mysql_close($link);
*/
/*part-5 查看服務器包含哪些數據庫mysql_list_dbs*/
/*
$db_list = mysql_list_dbs($link);
echo "<p>mysql 服務器擁有如下數據庫:</p>";
while ($row = mysql_fetch_object($db_list))
echo "$row->Database<br/>";
mysql_free_result($db_list);
mysql_close();
*/
/*part-6 某些數據表包含哪些字段使用mysql_list_fields*/
/*
$field_list = mysql_list_fields("friend", "friend_club", $link);
echo "<p>price 數據表包含如下字段</p>";
for($i = 0; $i<mysql_num_fields($field_list); $i++)
echo mysql_field_name($field_list, $i) ."|" ;
mysql_free_result($field_list);
mysql_close();
/*************************************************************************
* 分頁瀏覽 *
* ***********************************************************************
*/
?>
<!-- <h1>分頁預覽</h1>-->
<?php
/*
require_once("dbtools.inc.php");
//指定每頁顯示幾條記錄
$records_per_page = 5;
//取得要顯示第幾頁概率
if(isset($_GET["page"]))
$page = $_GET["page"];
else
$page =1;
//建立數據庫鏈接
$link = create_connection();
//運行SQL命令
$sql ="SELECT number AS '我的愛好', name AS '姓名' from friend_club ";
$result = execute_sql("friend", $sql, $link);
//取得字段
$total_fields = mysql_num_fields($result);
//取得記錄數
$total_records = mysql_num_rows($result);
//計算總頁數
$total_pages = ceil($total_records / $records_per_page);
//計算本頁第一條記錄的序號
$started_redcord = $records_per_page * ($page -1);
//將記錄指針移至本頁第一條記錄的序號
mysql_data_seek($result, $started_redcord); // mysql_data_seek 移動函數指針
//顯示字段名稱
echo "<table border='1' align='center' width='800'>";
echo "<tr align='center'>";
for ($i = 0;$i<$total_fields;$i++)
echo "<td>" . mysql_field_name($result, $i) ."</td>";
echo "</tr>";
//顯示記錄
$j = 1;
while ($row = mysql_fetch_row($result) and $j <= $records_per_page)
{
echo "<tr>";
for ($i=0; $i<$total_fields; $i++)
echo "<td>$row[$i]</td>";
$j++;
echo "</tr>";
}
echo "</table>";
//產生導航欄
echo "<p align='center'>";
if($page>1)
echo "<a href='index.php?page=".($page - 1)."'>上一頁</a>";
for ($i=1;$i<=$total_pages;$i++)
{
if($i==$page)
echo "$i";
else
echo "<a href='index.php?page=$i'>$i</a>";
}
if($page<$total_pages)
echo "<a href='index.php?page=". ($page+1) ."'>下一頁</a>";
echo "</p>";
//釋放內存空間
mysql_free_result($result);
mysql_close($link);
* */
?>
<script type="text/javascript">
function check_data()
{
var myForm1 = document.myForm;
if(document.myForm.author.value.length == 0)
alert("做者字段不能夠空白哦!");
else if(document.myForm.subject.value.length ==0)
alert("主題字段不能夠空白哦");
else if(document.myForm.content.value.length ==0)
alert("內容字段不能夠空白哦");
else
myForm1.submit();
}
</script>
<?php
/*************************************************************************
* 遊客留言板 *
* ***********************************************************************
*/
require_once("dbtools.inc.php"); //運行指定文件
$records_per_page = 5;
//取得要顯示第幾頁概率
if(isset($_GET["page"])) //isset判段
$page = $_GET["page"];
else
$page =1;
//建立數據庫鏈接
$link = create_connection();
//運行SQL命令
$sql ="SELECT * FROM message ORDER BY date DESC ";//DESC降序
$result = execute_sql("guestbook", $sql, $link);
//取得記錄數
$total_records = mysql_num_rows($result);
//計算總頁數
$total_pages = ceil($total_records / $records_per_page);
//計算本頁第一條記錄的序號
$started_redcord = $records_per_page * ($page -1);
//將記錄指針移至本頁第一條記錄的序號
mysql_data_seek($result, $started_redcord); // mysql_data_seek 移動函數指針
//使用$bg數組來存儲表格背景色
$bg[0] = "#d9d9ff";
$bg[1] = "#ffcaee";
$bg[2] = "#ffffcc";
$bg[3] = "#b9eeb9";
$bg[4] = "#b9e9ff";
echo "<table width='800' align='center' cellspacing='3'>";
//顯示記錄
$j=1;
while ($row= mysql_fetch_assoc($result) and $j<=$records_per_page) //mysql_fetch_assoc
{
echo "<tr bgcolor='".$bg[$j-1] ."'>";
echo "<td width='120' align='center'><img src='".mt_rand(0, 9) .".gif'></td>";
echo "<td width='200'>做者:".$row["author"] ."<br/>";
echo "主題: ".$row["subject"] ."<br/>";
echo "時間:".$row["date"] ."<hr/>";
echo $row["content"] ."</td></tr>";
$j++;
}
echo "</table>";
//生成導航欄
echo "<p align='center' class='list'>";
if($page > 1)
echo "<a href='index.php?page=".($page-1)."'>上一頁</a>";
for($i=1; $i <= $total_pages; $i++)
{
if($i==$page)
echo "$i";
else
echo "<a href='index.php?page=$i'>$i</a>";
}
if($page < $total_pages)
echo "<a href='index.php?page=".($page+1)."'>下一頁</a>";
echo "</p>";
//釋放內存空間
mysql_free_result($result);
mysql_close($link);
?>
<form name="myForm" method="post" action="post.php">
<table border="0" width="800" align="center" cellspacing="0">
<tr bgcolor="#0084ca" align="center">
<td colspan="2">請在此處輸入新的留言</td>
</tr>
<tr bgcolor="#d9f2ff" align="center">
<td width="15%" align="center">做者</td>
<td width="85%" align="left" ><input type="text" name="author" value="" /></td>
</tr>
<tr bgcolor="#84d7ff" align="center">
<td width="15%" align="center">主題</td>
<td width="85%" align="left"><input type="text" name="subject" value="" /></td>
</tr>
<tr bgcolor="#0084ca" align="center">
<td width="15%" align="center">內容</td>
<td width="85%" align="left"><textarea name="content" cols="50" rows="5"></textarea></td>
</tr>
<tr>
<td colspan="2" align="center">
<input type="button" value="submit" onClick="check_data()" />
<input type="reset" value="從新輸入" />
</td>
</tr>
</table>
</form>
</body>
</html>
dbtools.inc
<?php
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
function create_connection() //create_connection自定義函數
{
$link = mysql_connect("localhost", "root", "123@qwe") or die("沒法建立數據鏈接<br/><br/>" . mysql_error());
mysql_query("SET NAMES utf8");
return $link;
}
function execute_sql($database, $sql, $link) //execute_sql 自定義函數
{
$db_selected = mysql_select_db($database, $link)
or die("打開數據庫失敗<br/><br/>" . mysql_error($link));
$result = mysql_query($sql, $link);
return $result;
}
?>
post.php:
<?php
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
//require_once("dbtools_inc.php");
$author = $_POST["author"];
$subject = $_POST["subject"];
$content = $_POST["content"];
$current_time = date("Y-m-d H:i:s");
require_once("dbtools.inc.php"); //運行指定文件
//建立鏈接數據庫
$link = create_connection();
//執行SQL 命令
$sql = "INSERT INTO message(author, subject, content, date) VALUES ('$author', '$subject', '$content', '$current_time')";
$result = execute_sql("guestbook", $sql, $link);
//關閉數據鏈接
mysql_close($link);
//將網頁重定向到index.php
header("location:index.php"); //輸入後重載留言板,新留言會顯示在第一頁的第一條記錄。
exit();
?>