图像上传更快

时间:2013-01-30 23:27:55

标签: php mysql

这是一个多图像选择器上传器我遇到的问题是一旦选择了图像并点击提交它需要很长时间才能获得请求是否有任何方法可以让它更快地进行处理?

不要担心数据库表和列是否存在测试原因没有使我的完整数据库尚未测试第一。

提前致谢。

   <?
session_start();
include('connect.php');
?>

<form action="" method="POST" enctype="multipart/form-data">
<input type="file" name="files[]" multiple/>
<input type="submit"/>
</form>

<?

if(isset($_FILES['files'])){
$errors= array();
foreach($_FILES['files']['tmp_name'] as $key => $tmp_name ){
    $file_name = $key.$_FILES['files']['name'][$key];
    $file_size =$_FILES['files']['size'][$key];
    $file_tmp =$_FILES['files']['tmp_name'][$key];
    $file_type=$_FILES['files']['type'][$key];  
    if($file_size > 2097152){
        $errors[]='File size must be less than 2 MB';
    }
$desired_dir="Uploads/";    
    $query="INSERT into Pictures (`id`,`Image1`,`Image2`,`Image3`) VALUES('','$desired_dir$file_name','$file_size','$file_type'); ";
    if(empty($errors)==true){
        if(is_dir($desired_dir)==false){
            mkdir("$desired_dir", 0700);        // Create directory if it does not exist
        }
        if(is_dir("$desired_dir/".$file_name)==false){
            move_uploaded_file($file_tmp,"$desired_dir/".$file_name);
        }else{                                  // rename the file if another one exist
            $new_dir="$desired_dir/".$file_name.time();
             rename($file_tmp,$new_dir) ;               
        }
     mysql_query($query);           
    }else{
            print_r($errors);
    }
}
if(empty($error)){
    echo "Success";
}
}
?>

2 个答案:

答案 0 :(得分:1)

根据上述评论,上传似乎正常。您的互联网连接较慢,上传文件时会遇到速度减慢。

我还强烈建议您查看MySQLiPDO。您当前的脚本可以随时攻击

答案 1 :(得分:0)

据我所知,没有多线程上传文件到服务器。并且上传速度受限于服务器的下载速度用户的上传速度(这比服务器的下载速度慢得多) )。遗憾的是,通过更改代码无法更快地上传。