用php實現廣告輪播

來源:互聯網
上載者:User
  網路廣告,變成了 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='multipart/form-data' action='next.php' method=post > 您的大名: < input type=text name=user >< br > 設定檔名稱: < input name='myfile' type='file' >< br > < input type='submit' value='送出' > < /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='user' Wilson Peng --AaB03x content-disposition: form-data; name='myfile' Content-type: multipart/mixed, boundary=BbC04y --BbC04y Content-disposition: attachment; filename='myphoto.gif' 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,'/home1/biglobe3/ad/'.$banner_name);

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

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.