用PHP實現小型網站廣告管理(修正版)_php基礎

來源:互聯網
上載者:User
今天做照著例子做,發現其中有很多錯誤的地方,為了讓廣大菜鳥兄弟更好的理解,我把修改後的檔案給大家看看。
資料結構如下:

CREATE TABLE ad (
url varchar(100) NOT NULL,
banner varchar(150) NOT NULL,
alt varchar(100),
priority int(4) DEFAULT '1' NOT NULL,
)  

增加廣告的檔案
***************putad.php********************

<? if($submit){
    //處理表單資料的PHP程式;
         //圖片banner名和連結地址不可為空;
    if (( banner!="") & ( url!="")) {
    //若廣告連結和圖片名已被使用,必須另選;
    if (file_exists("adbanner/". $banner_name)) {
    echo "廣告圖片. banner_name.已被使用,請另選!";
    exit;
    };
    //上傳連結圖片檔案名稱到adbanner目錄;
    copy( $banner,"adbanner/". $banner_name);
   //串連MySQL資料庫;
    include("config.inc");
   //向資料表ad中插入來自於表單的新資料;
    $query="insert into ad (url, alt, priority, banner) values('$url','$alt','$priority','$banner_name')";
   //插入成功則顯示以下資訊;
    $try=mysql_query($query);
   if($try){
   echo "一條廣告新增完成,詳細資料:";
   echo "";
   echo "廣告網址:  $url
廣告連結說明: $alt
顯示加權:  $priority ";
    }else{echo "出錯";}
    }
    }else{
    ?>
<html>
<head>
        <title>Untitled</title>
</head>

<body bgcolor="#ffffff">
<p>廣告交換表</p>

<form method="post" action="putad.php" enctype="multipart/form-data">
  <p>圖 片 URL:
    <input type="file" name="banner">
  </p>
  <p>串連 URL:
    <input type="text" name="url">
</p>
  <p>顯示權數:
    <input type="text" name="priority"></p>
<p>串連說明:
    <input type="text" name="alt">

  </p>

<p>
    <input type="submit" name="submit" value="確定">
    <input type="reset" name="concel" value="重填">
  </p>
</form>
</body>
</html> <?}?>

***************showad.php********************


<?
     include("config.inc");
     $query="SELECT url, banner, alt, priority from ad";
     $result=mysql_query($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;$i++) {
     $pricount+=$adpriority[$i];
    if ($pri<=$pricount) {
     $ad[]="<a href=$adurl[$i]><img src=adbanner\$adbanner[$i] alt=$adalt[$i] border=0></a>";
    }
    }
    //顯示廣告,權值越大,顯示機會越大;
    echo  $ad[0];
    ?>


注釋:其中config.inc裡面就是串連mysql資料庫的東西,在這就不列出來了。上面的程式還有改進空間,還有好多功能沒實現,如果你願意你也可以修改。不過修改後最好給一份給我:terence611005@sina.com
有問題請和我聯絡:oicq:18680986  

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.