首頁 >後端開發 >php教程 >用php實現廣告輪播

用php實現廣告輪播

高洛峰
高洛峰原創
2016-12-02 10:38:071860瀏覽

  網路廣告,變成了 Internet 上的熱點學問。而 468x60 更變成了廣告職員絞盡腦汁的尺寸。 
  在處理廣告時,若能直接應用瀏覽器將廣告的 468x60 圖檔送到處理廣告的服務器中,信任是件很舒暢的事,不用再開 FTP 程序,搞大半天只為了 upload。 

  這個標題,是所有 Web CGI 程序的痛,包含 ASP、Prel....等等,都需要再經過系統元件的增加才幹達成。號稱最強的 Web CGI 程式: PHP,在這方面的表現沒有令人掃興,甚至傲視其它的 CGI 工具。 

  File Upload 功效在 RFC 1867 檔案有有具體的闡明,是利用特別的檔案格局 (content-type) multipart/form-data。值得留心的是瀏覽器必定要用 Netscape 3.0 以上或 MS Internet Explorer 4.0 以上的版本才幹將檔案上傳。

  先看下面的HTML 原始碼 

< form enctype=&#39;multipart/form-data&#39; action=&#39;next.php&#39; method=post > 
您的大名: < input type=text name=user >< br > 
档案名称: < input name=&#39;myfile&#39; type=&#39;file&#39; >< br > 
< input type=&#39;submit&#39; value=&#39;送出&#39; > 
< /form >

  在form 的標籤中,要參加enctype='multipart/form-data' 的字符串,表現應用者輸進的材料上有檔案,同時method 必須上傳POST 而不能用GET。 

  在上面的碼中,若應用者姓名填進 Wilson Peng,並選 c:myphoto.gif 的檔案,在應用者按下送出鍵後,瀏覽器則傳送出下面的 POST 資料。 

Content-type: multipart/form-data, boundary=AaB03x 

--AaB03x 
content-disposition: form-data; name=&#39;user&#39; 

Wilson Peng 
--AaB03x 
content-disposition: form-data; name=&#39;myfile&#39; 
Content-type: multipart/mixed, boundary=BbC04y 

--BbC04y 
Content-disposition: attachment; filename=&#39;myphoto.gif&#39; 
Content-type: image/gif 
Content-Transfer-Encoding: binary 

...myphoto.gif 内容略... 
--BbC04y-- 
--AaB03x--

  看到上面的資料中,boundary=AaB03x 即為離開不同欄位資料的訊息,其中的 AaB03x 編碼方法,視瀏覽器的版本不同而異,通常是瀏覽器雜產生的。之後就可以看到用 --AaB03x 來隔開不同的欄位。

  以上面為例,處理form 的action 程式next.php,會主動產生四個變數,見下表 

變數名稱闡明 
$myfile 即上傳的檔案內容 
$myfile_name 上傳檔案在應用者真個名稱
$myfile_size 上傳檔案的大小 
$myfile_type 上傳檔案的模式,如'image/gif' 


  在next.php 程式要做的最重要動作,就是好好應用這四個變數,否則程式要做的應用者上傳的檔案就消散了。因此,要先將$myfile 複製到存放廣告圖的目錄中 

copy($banner,&#39;/home1/biglobe3/ad/&#39;.$banner_name);

  這行程序就是將檔案存在/home/htdocs/ad 的目錄中,就上面的例子而言,就將檔案存到/home/ htdocs/ad/myphoto.gif。重要的是,存放的目錄不能是 Web Server 無法閱讀的目錄,而應放在網站的 Homepage 所在目錄中,才可以在網路上看到。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn