2012-02-18 14 views
0

uploadifyを使用して複数の画像をアップロードしたいと思います。uploadify PHPを使用して画像をアップロードしない

は、私は複数の画像をアップロードしたいシナリオ

は何ですか。また、アップロードされた各画像の情報もデータベースに入力したいと思っています。 onCompleteのイベント `のように私は、テーブルのすべて新しく入力されたIDのIDを取得したい私は 私uploadifyコード

を行っている何

$(document).ready(function() { $('#fileid').uploadify({ 'uploader' : '<?php echo SITEURL;?>/admin/uploadify/uploadify.swf', 'script' : '<?php echo SITEURL;?>/admin/action_files/area_pics_upload.php', 'cancelImg' : '<?php echo SITEURL;?>/admin/uploadify/cancel.png', //'folder' : '<?php echo SITEURL;?>/admin/uploadify/uploads', 'auto': 'true', 'fileExt' : '*.jpeg;*.jpg;*.gif;*.png', 'fileDesc' : 'Image Files (*.JPEG,*.JPG, *.GIF, *.PNG)', 'multi' : true, 'onAllComplete': function(event, data) { alert(data); } }); 

}); area_upload_pics.php

if (!empty($_FILES)) 
{ 
$allowedExtensions = array("jpeg","jpg","gif","png"); 
for($i=0;$i<count($_FILES);$i++) 
{ 
    if(in_array(end(explode(".",strtolower($_FILES['fileid'][$i]['name']))),$allowedExtensions)) 
    { 
     $file = time().'-'.$_FILES["fileid"][$i]['name']; 
     if(move_uploaded_file($_FILES["fileid"][$i]["tmp_name"],'../../uploaded_files/area_pics/'.$file) 
     { 
      //save file info in database 
      $q = "INSERT INTO ".DB_PREFIX."_files (file) values (".$file.")"; 
      mysql_query($q); 
    $images_ids[]=mysql_insert_id(); 
     } 
    } 
} 
} 

echo(json_encde($images_ids); 

私の問題で

コードが

画像がアップロードされていません。私は良いパスをチェックした。何が間違っているの?

+0

エラーはどうなっていますか?小さいサイズのファイルで試してください – dynamic

+0

@ yes123ファイルはアップロードされていません。 –

+0

アクションファイルはarea_pics_upload.phpで、コードは "code in area_upload_pics.php"を投稿したコードの前にあります。問題の原因はわかりませんが、これを修正できます。 –

答えて

0

私はuploadifyについて間違った考えを持っていました。私はリソース(アップロードしているファイル)をアップロードすることに一度だけ時間がかかると考えていたので、$_FILESを配列として持つ必要があります。 しかし、uploadifyはアップロードするファイルを選択した回数だけアップロードスクリプトにヒットします。たとえば、アップロードするファイルを6つ選択したとします。 Uploadifyは、scriptに記載されているアップロードスクリプトをuploadifyの6回実行します。したがって、for loopを使用せずに$_FILESまで繰り返す必要はありません。単一のファイルのアップロードに使用するようにスクリプトを使用してください。

これは同じ問題を抱えている人向けです。 :-)

関連する問題