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

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

// " /> 一区二区视屏,日韩午夜在线,国产一级啪啪

四虎精品视频-四虎精品成人免费网站-四虎黄色网-四虎国产视频-国产免费91-国产蜜臀97一区二区三区

在線競(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è)買(mǎi)家信息
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è)買(mǎi)家信息。
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");
}

?>

  好了,羅羅嗦嗦寫(xiě)了兩篇,不知道可不可以又加個(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)系我們修改或刪除,多謝。

主站蜘蛛池模板: 饶俊| 荒岛求生2005美版| 乱世伦情 电影| 性感美女动漫| 每天一分钱每天翻一倍连续30天| 李政宰演的电影| 我的冠军男友在线看全集完整| 在线播放国内自拍情侣酒店| 韩国电影闵度允主演电影| 老阿姨电影电视剧免费| 致爱丽丝钢琴简谱双手完整版| 成人免费视频观看视频| 盒饭餐盒图片| 彭丹三级裸奶视频| 李子京| 高天妮| 死神来了电影| 娄际成| 插树岭演员表| 满天星的电影都有哪些| 电影绿色地狱| 秀人网周妍希| 觉醒年代免费看| 天赐的声音在哪个平台播出| 特黄特黄a级毛片免费专区| 玛丽与魔女之花| 北京卫视今晚节目表| 误杀1演员表| 我有一个好朋友作文二年级| 意大利a级情欲片女人城| 不良人第三季| 廊桥遗梦 电影| 初恋50次 电影| 局外人电影| 烽火硝烟里的青春演员表| 魔鬼黑狱| 牛素云| 马会传真论坛13297соm查询官网 | 刘浩存个人简历资料| 三年电影| 六一儿童节小品剧本|