2011年11月24日木曜日

[LAMP]ファイルがPOSTされない

画面で数個の画像ファイルをPOSTしたんですけど、サーバー側で受信されていない模様。
トレースログを見たら途中までは処理されて、途中から何も無かったような振る舞いを確認。

つまり、プログラムまでデータが渡っていない。と。

ちょっと調べたらapacheでのpostデータサイズ制限は「LimitRequestBody」で設定らしいです。
httpd.confには当該の記述が無かったので却下。
(デフォルトで無制限?危ないなぁ。。)

次はphp.ini。
それっぽいのいました。
「post_max_size」と「upload_max_filesize」。
upload_max_filesizeは1つ当たりのファイルサイズ上限設定で、post_max_sizeはpostの合計サイズ。

今回は、
upload_max_filesize = 10M
post_max_size = 60M
として、apache再起動で解決でした。

コア php.ini ディレクティブに関する説明

2011年11月16日水曜日

[ASP]配列の代入は値渡し?参照渡し?

ちょっと久しぶりにASP(classic)を触ったら不安になったので確認しました。
文字列が格納された配列を代入した場合、値渡しでした。


dim a,b,c
a = array("あいう","かきく","さしす")
'代入
b = a

'bの要素を書き換える
b(1) = "けこ"

for each c in a
    response.Write(c & "
") next Response.Write( "
") for each c in b response.Write(c & "
") next

2011年10月27日木曜日

Uploadifyを使った。

複数画像を選択してアップロードする要件があったためUploadifyを使った。
オプション設定も豊富で使いやすいです。

ポップアップウィンドウで使ったのですが、IEではuploader、script、cancelImg、folderのパスを絶対パスで書かないと正常にPOSTされないんですね。

FireFox、Chromeでは相対パスでいけるのに。。。
気が向いたらSafariでも試してみます。


$(document).ready(function() {
$('#file_upload').uploadify({
'uploader' : '/dev/agent/upload/uploadify.swf',
'script' : '/dev/agent/upload/uploadify.php',
'cancelImg' : '/dev/agent/upload/cancel.png',
'folder' : '/dev/images/o_o/',
'auto' : true,
'multi' : true,
'fileExt' : '*.jpg;',
'fileDesc' : 'Image Files (.JPG)',
'queueSizeLimit' : 999 ,
'fileDataName' : 'Filedata' ,
'simUploadLimit' : 1,
'sizeLimit' : 5000000
});
});