1.先建立範例資料庫:
<pre class="c" name="code">
# 資料表格式: `product`
#
CREATE TABLE `product` (
`pid` bigint(11) unsigned NOT NULL auto_increment,
`pname` varchar(100) NOT NULL default '',
`pdate` bigint(11) NOT NULL default '0',
`pimg` varchar(100) NOT NULL default '',
PRIMARY KEY (`pid`)
) TYPE=MyISAM AUTO_INCREMENT=6 ;
#
# 列出以下資料庫的數據: `product`
#
INSERT INTO `product` VALUES (1, '產品名01', 1313121600, 'demo01.jpg');
INSERT INTO `product` VALUES (2, '產品名02', 1313121600, 'demo02.jpg');
INSERT INTO `product` VALUES (3, '產品名03', 1313121600, 'demo03.jpg');
INSERT INTO `product` VALUES (4, '產品名04', 1313121600, 'demo04.jpg');
INSERT INTO `product` VALUES (5, '產品名05', 1313121600, 'demo05.jpg');
2.產品列表頁範例(products.php)
<pre class="c" name="code">
<?php
// 資料庫資訊
$dbhost = 'localhost'; // 資料庫主機名
$dbname = 'testProd'; //資料庫名稱
$dbuser = 'root'; //資料庫用戶名
$dbpasswd = ''; //資料庫密碼
?>
<?php
$i=0;
$where_str='';
$per_page = 5; //每頁最多5筆,這數字可以自由更改
if(isset($_GET['page'])){
$page=$_GET['page'];
}else{
$page=1;
}
$start = ($page-1)*$per_page;
$where_str='';
?>
<?php
$link = mysql_connect($dbhost,$dbuser,$dbpasswd) or die ("-1");
mysql_select_db($dbname) or die("cannot connect to db");
$query = "SELECT * FROM product $where_str ORDER BY pid DESC ";
$result = mysql_query($query) or die("cannot connect to table" . mysql_error( ));
$I=0;
while ( $row = mysql_fetch_array($result) ) {
$I++;
}
$total=$I;
$pages=ceil($total/$per_page);
if($page>$pages) $page=$pages;
$start = ($page-1)*$per_page;
?>
<html xmlns="http://www.w3.org/1999/xhtml">
<meta http-equiv="Content-Type" content="text/html; charset=big5">
<title>:::::Product Catelog:::::</title>
<?php
$imgBaseUrl='testProdImg/'; //假設圖片放在testProdImg資料夾
if($total>0){
$orderBy='pid';
$upDown='desc';
$i = $start;
$query = "SELECT * FROM product $where_str ORDER BY $orderBy $upDown limit $start, $per_page";
$result = mysql_query($query) or die("Error:" . mysql_error( ));
while($rs = mysql_fetch_array($result))
{
$i++;
?>
<p style="padding:5px;border:solid 1px #aaa;margin:5px;">
<a href="productDetails.php?pid=<?php echo $rs['pid']; ?>" >
<img src="<?php $imgBaseUrl.$rs['pimg']; ?>" />
產品名:<?php echo $rs['pname']; ?>
</a>
</p>
<?php
} //while
?>
<?php
} /* if $total>0 end */
?>
<?php
if($total>$per_page){
if($page!=1){
echo '<a href="products.php?page='.($page-1);
echo '">上一頁</a>';
}else{
echo '<span class="noLink">上一頁</span>';
}
echo ' ';
for($pi=1;$pi<=$pages;$pi++){
//echo $pi;
if($pi==$page){
echo ' [ '.$pi.' ] ';
}else{
echo '<a href="products.php?page='.($pi);
echo '"> '.$pi.' </a>';
}
}
echo ' ';
if($page!=$pages){
echo '<a href="products.php?page='.($page+1);
echo '">下一頁</a>';
}else{
echo '<span class="noLink">下一頁</span>';
}
}?>
3.產品細節頁範例(productDetails.php)
<pre class="c" name="code">
<?php
// 資料庫資訊
$dbhost = 'localhost'; // 資料庫主機名
$dbname = 'testProd'; //資料庫名稱
$dbuser = 'root'; //資料庫用戶名
$dbpasswd = ''; //資料庫密碼
?>
<?php
if(!isset($_GET['pid'])){
//沒有pid則直接跳轉回products.php
header("location: products.php");
}else{
$pid=$_GET['pid'];
}
?>
<?php
$link = mysql_connect($dbhost,$dbuser,$dbpasswd) or die ("-1");
mysql_select_db($dbname) or die("cannot connect to db");
$query = "SELECT * FROM product where pid=$pid ORDER BY pid DESC ";
$result = mysql_query($query) or die("cannot connect to table" . mysql_error( ));
?>
<html xmlns="http://www.w3.org/1999/xhtml">
<meta http-equiv="Content-Type" content="text/html; charset=big5">
<title>:::::Product Catelog:::::</title>
<a href="products.php">回產品列表頁</a>
<?php
while($rs = mysql_fetch_array($result))
{
$i++;
?>
<p style="padding:5px;border:solid 1px #aaa;margin:5px;">
產品名:<?php echo $rs['pname']; ?>
<br />
日期:<?php echo date("Y-m-d",$rs['pdate']); ?>
<br />
產品圖:<?php echo $rs['pimg']; ?>
</p>
<?php
} //while
?>
====================================
說明:
如果您對PHP程式沒有很熟的話,建議您使用DREAMWEAVER,它可以用拖曳的方式很快速建立PHP+MySQL程式碼,直接去找書來看吧~ 如果不熟又不想花時間找書的話,那直接花錢找外包比較快~
看是要用哪種特效,基本上這是java在做的,不太需要資料庫去運行
可以採用lightbox來做。將跳出來的產品頁面用成jpg檔之類的然後再將語法嵌入
http://www.tdes.chc.edu.tw/works/computer/homepage/lightbox2/index.asp
lightbox 我有做過 可是交代我做的人不滿意
他比較希望 能類似http://www.mighty-seven.com/products/products.asp
這個也只是單純的超連結。
並不是如fantsyss大大說的單純的超連結喔~ 這應該是會有兩頁的php程式...