PHPでかんたんな画像アップローダー

保存先のフォルダを選べる画像アップローダを作成する

upload.phpのフォーム部分を記述します。

<table>
<form action=’upload.php‘ method=’post’ enctype=’multipart/form-data’>
<tr>
<td>ファイル:</td>
<td><input type=’file’ name=’upfile’ size=’30’></td>
</tr>
<tr>
<td>保存先:</td>
<td>
<select name=’folder’>
<option value=’img01/’>フォルダ1</option>
<option value=’img02/’>フォルダ2</option>
</select>
</td>
</tr>
<tr>
<td colspan = ‘2’ align=’center’>
<input type=’submit’ value=’アップロード’>
<input type=’hidden’ name=’phase’ value=’receive’>
</td>
</tr>
</form>
</table>

enctype=’multipart/form-data’

  • フォームからデータを送信するためのエンコードです。

    [upfile][name] ファイル名

    [upfile][type] ファイルタイプ image/jpeg など

    [upfile][tmp_name] アップロードされたファイルに一時的につけられる、パスを含むテンポラリファイル名 /tmp/phpJP00Aqなど

    [upfile][error] エラーがなければ0

    [upfile][size] ファイルサイズ

    が送られます。

phaseがreceiveだったら受け取る部分を実行します

if($phase == ‘receive’){

/***  受け取ったあとの処理 ***/

if( is_uploaded_file($_FILES[“upfile”][“tmp_name”])or die(“its not uploaded file”)){
if( move_uploaded_file($_FILES[“upfile”][“tmp_name”], $_POST[“folder”] . $_FILES[“upfile”][“name”])or die(“couldnt move the file”)){
chmod($_POST[“folder”] . $_FILES[“upfile”][“name”], 0644);
$file_name = $_POST[“folder”] . $_FILES[“upfile”][“name”];
$message = “ファイルをアップロードしました。


PHPでIEを判別する

Tibau / ceara

getenv(“HTTP_USER_AGENT”)

でブラウザ情報を取得し、

ereg( “MSIE”, 取得した情報 )

でその中に”MSIE”という文字列があるかどうかで判別します。

$HTTP_USER_AGENT = getenv(“HTTP_USER_AGENT”);

if(!ereg(“MSIE“, $HTTP_USER_AGENT)){

    print”IE<ではありません。";

}else{

print”IEです。”;

    }

HTTP_USER_AGENTはクライアントのブラウザがサーバへ送る
環境変数のひとつ

ページごとのクセスカウンタを作る

Macas / Morona Santiago

//ページのIDを含んだファイル名

$logfile = “access/” . $page_id . “.dat”;

//ファイルを開いて現在の数字を読み込む。無い場合はファイルを作成する

$fp = @fopen($logfile,”r”);
$accnt = fgets($fp);
fclose($fp);

//カウンタの数を一つ増やす

$accnt = $accnt + 1;

//増やした数字を上書きする

$fp = @fopen($logfile,”w”);
fputs($fp, $accnt);
fclose($fp);

fopen ファイルを開く
fgets ファイルの内容を読み込む
fwrite ファイルに書き込む
fclose ファイルを閉じる