uploadify不使用PHP上传图像

时间:2012-02-18 14:21:36

标签: php file-upload uploadify

我想使用uploadify上传我的多张图片。

什么是方案

我想上传多张图片。我还想在数据库中输入每个上传图像的信息。在`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);

我的问题

图片未上传。我已经检查了好的路径。我究竟做错了什么。

1 个答案:

答案 0 :(得分:0)

我对uploadify有错误的概念。我认为上传资源(上传文件)只需要一次,所以我们必须将$_FILES作为数组。 但是,在您选择要上传的文件时,uploadify会多次点击上传脚本。例如,您已选择要上载的6个文件。 Uploadify会在uploadify的script属性中显示6次上传脚本。因此,您无需使用for loop并遍历$_FILES。只需使用用于单个文件上载的脚本。

这是针对那些有同样问题的人。 : - )