********顯示詳細(xì)信息的文件***********
detail.php

<?php
include "config.inc.php";

// " /> 黄色体验区,久爱免费观看在线精品,欧美 日韩 国产 在线

一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

在線競(jìng)拍系統(tǒng)的PHP實(shí)現(xiàn)框架(二)

上回說(shuō)完了商品的列表顯示方法。下面來(lái)談?wù)勶@示商品詳細(xì)信息的方法,這與我們?cè)谡搲谐S玫娘@示帖子的方法大同小異。

********顯示詳細(xì)信息的文件***********
detail.php

<?php
include "config.inc.php";

//顯示商品詳細(xì)信息
//用全局變量來(lái)做,可以方便地取到多個(gè)字段的值。
//有id,名字,價(jià)格,介紹,當(dāng)前價(jià),單位,圖片,結(jié)束時(shí)間。
function ReadDetail(){
global $WARE_TABLE;
global $id,$name,$price,$description,$cprice,$unit,$image,$endtime;

$SQL="select id,name,description,price,unit,endtime,reply,curprice,photo from $WARE_TABLE where id='$id'";
$result=mysql_query($SQL) or die(mysql_error());

//下面這一句,也可以用list(...)來(lái)做,但我習(xí)慣這樣分開(kāi),看起來(lái)是麻煩點(diǎn),不過(guò)清楚些,特別是有要處理的字段時(shí),這樣就很有必要了。

$row=mysql_fetch_array($result);
$name=$row[name];
$price=$row[price];
$description=$row[description];
$unit=$row[unit];
$cprice=$row[curprice];
$endtime=date("Y-m-j",$row[endtime]);
if($row[photo]==1) $image=$row[id].".jpg";
else $image="";
}


//讀最新10個(gè)買家信息
function ReadBuyer(){
global $BID_TABLE;
global $id,$buyer,$buyprice,$date,$num;

$SQL="select id,buyer,email,price from $BID_TABLE where parentid='$id' order by id desc";
$result=mysql_query($SQL) or die(mysql_error());
$k=mysql_num_rows($result);

$num=($k>10)? 10:$k; //判斷一下,是不是多于10個(gè)。

for($i=0;$i<$num;$i++){
$row=mysql_fetch_array($result);
$buyer[]=$row[buyer];
$buyprice[]=$row[price];
$date[]=date("Y-m-j H:i:s",$row[id]);
}
}


//顯示10個(gè)買家信息。
function ShowBuyer(){
global $buyer,$buyprice,$date,$num;

for($i=0;$i<$num;$i++){
echo "<tr><td width=25%>".$date[$i]."</td>";
echo "<td width=40%>".$buyer[$i]."</td>";
echo "<td width=35%>".$buyprice[$i]."</td></tr>";
}
}

ReadDetail();
ReadBuyer();

?>

  完成了上面的處理,就可以html中用<? echo $name?>或<? echo $price;?>等來(lái)取到要顯示的信息了,這些我就不詳述了。
  就是這句,要根據(jù)是否有圖片分別顯示文字或圖片。
<? if($image=="") echo "沒(méi)有照片"; else echo "<img src=photo/$image>"; ?>



  在顯示商品詳細(xì)資料時(shí),也應(yīng)讓用戶可以投標(biāo),所以此時(shí)要對(duì)用戶下的新價(jià)做出一個(gè)判斷,我比較懶,就直接用deamweaver來(lái)做這個(gè)表單的校驗(yàn)了,只把其中的英文說(shuō)明改成中文,不過(guò)由于在判斷新出價(jià)的方面有點(diǎn)特殊,所以對(duì)dw生成的函數(shù)做了一點(diǎn)點(diǎn)改動(dòng)。

<script language="JavaScript">
<!--
function MM_findObj(n, d) { //v3.0
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); return x;
}

function MM_validateForm() { //v3.0
var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
if (val) { nm=val.name; if ((val=val.value)!="") {
if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
if (p<1 || p==(val.length-1)) errors+='- '+nm+' 必須是正確的email地址.n';
} else if (test!='R') { num = parseFloat(val);
if (val!=''+num) errors+='- '+nm+' 必須是數(shù)值.n';
if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
min=test.substring(8,p); max=test.substring(p+1);
//**********改動(dòng)部分*********
var k=(num-min)/max;
//判斷要大于當(dāng)前價(jià),并且是當(dāng)前價(jià)+加價(jià)單位的整數(shù)倍
if (num<min || k != Math.ceil(k) ) errors+='- '+nm+' 必須是大于 '+min+' 并且加價(jià)必須為 '+max+'的整數(shù)倍.n';
} } } //*******結(jié)束改動(dòng)部分********
else if (test.charAt(0) == 'R') errors += '- '+nm+' 要填完整.n'; }
} if (errors) alert('發(fā)現(xiàn)錯(cuò)誤如下:n'+errors);
document.MM_returnValue = (errors == '');
}
//-->
</script>

下面的事就簡(jiǎn)單了,還要有什么呢?顯示一下已結(jié)束競(jìng)標(biāo)的商品吧。這個(gè)功能的實(shí)現(xiàn)與顯示未結(jié)束的商品方法一樣,我就不羅嗦了。唯一的區(qū)別在于一是SetCondition()條件的不同和在顯示結(jié)束競(jìng)價(jià)的商品詳細(xì)資料時(shí),沒(méi)有用戶出價(jià)的表單。


另外,我再給出添加新商品的方法吧。

<?php
include "config.inc.php";
include "tview.class.php";

function AddRecord(){
global $view;
//以下變量都是從上一個(gè)頁(yè)面的表單中得到的。
global $name,$price,$unit,$year,$month,$day,$photofile,$intro;

$t=time();
$c=nl2br($intro);
$et=mktime(24,0,0,$month,$day,$year);

//判斷一下是否有圖上傳了。
$ph=( $photofile!="none" and !empty($photofile) )? '1':'0';

//調(diào)用成員函數(shù)add()參數(shù)就是sql語(yǔ)句中的values()中的字串
$view->Add("'$t','$name','$c','$price','$unit','$et','0','$price','$ph'");

//如果有圖片,拷到指定目錄下。
if($ph=='1')
copy($photofile,"photo/$t.jpg");

}

if( $Submit){
$view= new TViewPage($WARE_TABLE,20);
AddRecord();
header("Location:manager.htm");
}

?>

  好了,羅羅嗦嗦寫了兩篇,不知道可不可以又加個(gè)幾百分哦。:)

  有什么問(wèn)題真心地請(qǐng)大家提出來(lái)討論,我可是把程序拿出來(lái)了,您見(jiàn)到什么不妥的不當(dāng)?shù)模汕f(wàn)不要吝嗇,記得告訴我一聲。

  我的email : ycshowtop@21cn.com

  另外,如果你想要這個(gè)程序比較完整的代碼,也來(lái)個(gè)email,我寄給您。

php技術(shù)在線競(jìng)拍系統(tǒng)的PHP實(shí)現(xiàn)框架(二),轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 香蕉大久久| 38pao强力打造永久免费高清视频 | 欧美亚洲视频 | 婷婷在线视频 | 深爱五月综合网 | 久久免费特黄毛片 | 欧美午夜性 | 亚洲短视频在线观看 | 亚洲精品国产成人 | 天天干天天综合 | 国产激情一级毛片久久久 | 国产在线观看一区二区三区四区 | 婷婷综合另类小说色区 | 成人永久免费视频网站在线观看 | 四川幻女一级毛片 | 国产亚洲欧洲国产综合一区 | 在线观看www视频 | 三级网站免费播放国语 | 国产精品社区在线观看 | 伊人久久五月 | 国产91网站在线观看免费 | 美女黄色在线观看 | 中文一区在线观看 | 国产成人综合日韩精品婷婷九月 | 免费成人午夜视频 | 亚洲大片免费观看 | 精彩国产熟睡乱子伦午夜片 | 看免费5xxaaa毛片30厘米 | 四虎在线播放免费永久视频 | 隔壁搬来黑人巨大中文字幕 | 国产成人综合在线观看网站 | 久久久网久久久久合久久久久 | 东方伊人免费在线观看 | 皇色在线视频 | 日韩视频在线观看一区 | 91视频久久| 色婷婷色综合 | 97人人超人超人国产第一页 | 福利800av视频导航 | 91久久精一区二区三区大全 | 国产真实伦正在播放 |