これはこのシステムの download.php で、主にダウンロードとカウントを担当します。ファイル形式はコメントで説明されています。
//入力 num はダウンロードするファイル番号です。 、col= ダウンロードする列
//タイムアウトなしの IP ダウンロード数に 1 を追加します
//ファイル形式
//0番号<1 著者<2ファイルの場所<3投票数<4概要>5ファイルサイズ<6ファイルのダウンロード数
//ip ファイル形式 アドレス: project: time
$uploadto="../uploadfile/".$col."/";//アップロード先のサブディレクトリ
$cgiroot="http:// eccct.51.net/cgi -bin/"; //ホストと現在のディレクトリ
$pathtemp=explode("/",$HTTP_ENV_VARS["PATH_INFO"]);
$pathtemp[sizeof($pathtemp)-1]= "";
$cgiroot= "http://".$HTTP_HOST.implode("/",$pathtemp);//ホストと現在のディレクトリ
$ipfile=$uploadto.$col.".ipd";// ダウンロード用の IP ファイル
$overtime =4;//時間単位のタイムアウト
$goback="
システムは 3 秒後に戻ります... ..< ;script>setTimeout('location.href="view.php?col=".$col.""',3000)";
$recfile=$uploadto.$col.".lst";
//IP ファイルを取得します
$fp=@fopen($ipfile,"r") または die("申し訳ありませんが、投票は違法です".$goback);
$ipinfo=fread($ fp,filesize($ipfile) ));
fclose($ipfile);
$times=$times["%02d", $times" ]);
//絶対時間
//タイムアウトを削除します ip
$ip_times=explode("|",$ipinfo);
$ipinfo=""; ;$i
$ip=explode(":",$ip_times[$i]);
if($ip[1]==" "||$ip[0] ] == "" || $ ip [2] == "")continue( '$ temp ='。$ abstime '。$ ip [2]。'; '); ipinfo,$REMOTE_ADDR.":".$num))
{
$fp=@fopen($ipfile,"w") または die("エラーが発生しました".$goback)
fwrite($fp, $ipinfo); );
fclose($fp);
$firstdown=0;//最初のダウンロード
}
else{
$firstdown=1;//最初のダウンロードではありません
$ipinfo=$ipinfo.$REMOTE_ADDR .":"。 $num.":".$abstime."|";
$fp=@fopen($ipfile,"w") または die("エラーが発生しました".$goback); ;
fclose($fp);
//IP判定終了
for($i=0;$i$fp=@fopen($recfile,"r") または die("申し訳ありませんが、不正です".$goback);
$info=explode("> ;", fread($fp,filesize($recfile)));
fclose($fp);
unlink($i =0; $i $items=explode("<",$info[$i]);
if(!trim($items[0]))
if( trim($items[0])==$num){//ダウンロードするアイテム
if($firstdown)
$items[6]++;
$filepath=$uploadto.$items[2] ; $ info[$i]=implode("<",$items); $ fp=fopen($recfile,"w")){
copy($votefile.".bak",$votefile);エラー 02".$goback);
}
for($i=0; $i if(trim($info[$i])!="") fputs( $fp,trim($info[$i].">")) ;
fclose($fp);
echo "
"; ;body class=tb >";
echo "";
echo "
";
echo "
お使いのブラウザは自動的にダウンロードします div>" (秒単位);
echo "
";
echo "
";
echo "
gt;
";
echo "
";
//echo $ HTTP_ENV_VARS["PATH_INFO"];
/ /echo "<script>window.location.href='".$filepath."';window.close();</script>";
echo " body>"; "Content-type: application/.rar");
//header("Content-Disposition:attachment; filename=".$filepath);
//Header("Location: " .$filepath); ("Content-Description: PHP3 で生成されたデータ
?>
以上、データベースを使わないマルチユーザーファイル無料アップロード投票システム2を内容も含めて紹介しましたが、PHPチュートリアルに興味のある友人の参考になれば幸いです。