色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

用PHP實現小型站點廣告管理

瀏覽:10日期:2024-01-05 14:32:42
圖片鏈接廣告大概是最為常用的網絡廣告模式,但是多條廣告的動態隨機顯示可不是那么簡單的事情。PHP的文件上傳函數提供了在這塊468x60像素的區域(網頁廣告的標準尺寸)實現能夠根據權值大小而隨機顯示廣告的解決方案,從而避免了開發FTP程序或是ASP和Perl CAI中需要外掛擴展才能實現此項功能的弊端。 ;;;;;本例在PHP4+MySQL+Apache for Win9x/2000下調試通過,共包括兩部分:用來增加新廣告的程序AddNewAd.php3以及顯示廣告的程序ShowAd.php3,都存放在服務器PHP文件目錄下的“test/guanggao/”目錄中。在guanggao目錄中建立一個存放廣告鏈接圖片的子目錄“adbanner/”。下面我們按步驟進行分析。 ;;;;;1.首先,建立MySQL數據庫:guanggao ;;;;;在Windows環境下,建立一個MySQL空數據庫很簡單,因為每個數據庫都是存在于mysql/data/目錄下的一個子目錄,所以只要在該目錄下新建子目錄guanggao就可以了,這時數據庫內還沒有任何表和數據。 ;;;;;2.建立新增廣告程序:AddNewAd.php3 ;;;;;設計思路:其中先用表單得到用戶的新廣告信息;然后用PHP函數copy()將鏈接圖片(banner)文件上傳到服務器adbanner目錄下;最后將圖片文件名、廣告網址、說明、加權信息等寫入建立的MySQL數據表ad中。該程序代碼如下: ;;;;;# AddNewAd.php3——增添新的廣告 # ;;;;;增添新廣告 ;;;;//表單用來輸入新增廣告信息,并交給下面的PHP程序處理; ;;;;//其中,加權值priority數字愈大,載入頁面圖片出現的機率就愈高,默認為1。 ;;;;;;;;;廣告 Banner:;;;;;;廣告網址URL:;;;;;;圖片鏈接說明ALT:;;;;;;顯示加權:;;;;;;;;;;;;;;;;//處理表單數據的PHP程序; ;//圖片banner名和鏈接地址不能為空; ;;;;if (( banner!="") & ( url!="")) { ;;;;//若廣告鏈接和圖片名已被使用,必須另選; ;;;;if (file_exists("adbanner/". banner_name)) { ;;;;echo "廣告圖片. banner_name.已被使用,請另選!";;;exit; ;;;;}; ;;;;//上傳鏈接圖片文件名到adbanner目錄; ;;;;copy( banner,"adbanner/". banner_name); ;;;//連接MySQL數據庫; ;;;;;connection = mysql_connect();;;;;;//選擇數據源guanggao,執行查詢;; ;;;mysql_select_db("guanggao", );;;;;;;query="SELECT * FROM ad";;;result=mysql_query( query); ;;;//如果數據表ad不存在,則按以下結構創建新數據表ad; ;;;if(!result){ ;;;mysql_query(" ;;;create table ad( ;;;url varchar(100) not null, ;;;banner varchar(150) not null, ;;;alt varchar(100) null, ;;;priority;;tinyint(4) default '1' not null;;;;;)") or die(mysql_error());;;;;;} ;;;//向數據表ad中插入來自于表單的新數據; ;;;;query="insert into ad(url, banner, alt, priority) values(' url', ' banner_name', ' ;;alt', ' priority')";;//插入成功則顯示以下信息; ;;;;try=mysql_query( query); ;;;if( try){ ;;;echo "一條廣告新增完成,詳細信息: ";;echo " ";;echo "廣告網址:;;url 廣告鏈接說明:;;alt 顯示加權:;;priority ";;;} ;;;;} ;;;;?> ;;;;;3.建立顯示廣告程序:ShowAd.php3 ;;;;;設計思路:得到數據庫表中所有各列信息分別存到相應的一維數組中,將所有廣告的權值相加得到一個最大隨機數,每次載入頁面用srand() 產生一個隨機樹種子,再用rand()函數產生一個從1到最大隨機數之間的一個隨機數,然后按照一定的規則隨機顯示不同廣告條,權值越大被顯示的機會越大。 ;;;;# ShowAd.php3——隨機顯示廣告 # ;//連接選擇數據庫; ;;;;;connection = mysql_connect();;;;;;;mysql_select_db("guanggao",;;connection); ;;;;//執行查詢得到廣告條數; ;;;;;query="SELECT url, banner, alt, priority FROM ad where priority > 0";;;;result=mysql_db_query("guanggao",;;query); ;;;;;numrows=mysql_num_rows( result); ;;;//使用mysql_fetch_object()函數獲取有用的列信息并存到相應數組中; ;;;;while( row = mysql_fetch_object( result)) { ;;;;;adurl[]= row->url; ;;;;;adbanner[]= row->banner; ;;;;;adalt[]= row->alt; ;;;;;adpriority[]= row->priority; ;;;;} ;;;;//初始化中間變量; ;;;;;numcheck= numrows; ;;;;;i= pricount=0; ;;;;//得到最大隨機數; ;;;;while( numcheck) { ;;;;;pricount+= adpriority[ i]; ;;;;;i++; numcheck--; ;;;} ;;;//程序執行時的百萬分之一秒產生隨機數種子; ;;;srand((double)microtime()*1000000); ;;;//得到1到最大隨機數之間的一個隨機數; ;;;;pri = rand(1, pricount); ;;;//中間變量清零; ;;;;;pricount=0; ;;;;//按加權值不同,產生用來顯示廣告的、元素為字串的數組; ;;;;for(;;i=0;;;i< numrows-1;;;i++) { ;;;;;pricount +=;;adpriority[ i]; ;;;;if ( pri <=;;pricount) { ;;;;;ad[]="";;;} ;;;;} ;;;;//顯示廣告,權值越大,顯示機會越大; ;;;;echo;;ad[0]; ;;;;?>;
標簽: PHP
相關文章:
主站蜘蛛池模板: 欧美激情成人网 | 国产91丝袜在线播放九色 | 5x社区直接进入一区二区三区 | 三级a黄 | 97超视频在线观看 | 成年女人在线观看片免费视频 | 日本特爽特黄特刺激大片 | baby在线观看免费观看 | 亚洲碰碰 | 美女视频在线观看黄 | 成人一级大片 | 欧美毛片在线观看 | 亚洲第一区视频在线观看 | 欧美视频在线观看免费精品欧美视频 | 国内精品久久久久久野外 | 在线国产观看 | 午夜性刺激免费视频观看不卡专区 | 亚洲成a人片在线网站 | 国产精品久久久久久久久福利 | 五月激情丁香婷婷综合第九 | 国产毛片a精品毛 | 欧美成人免费午夜全 | 毛片毛片毛是个毛毛片 | 新版天堂中文资源8在线 | 久久网免费 | 欧美精品一级 | 欧美视频区 | 精品久久久久国产免费 | 日韩视频中文字幕 | 天堂资源8中文最新版在线 天堂最新版 | 久久一本精品 | 日日爽夜夜操 | 成人三级在线观看 | 久久亚洲不卡一区二区 | 国产精品三级在线观看 | 窝窝社区在线观看www | 亚洲精品 欧美 | 一本色道久久综合狠狠躁 | 俄罗斯特级毛片 | 免费一级毛片女人图片 | 亚洲一区在线播放 |