zoukankan      html  css  js  c++  java
  • php上传多张图片

    第一种:加后缀

    代码实现(就是普通的上传图片,只是在外面加个foreach循环)

    $allow_file_types = '|GIF|JPG|PNG|BMP|SWF|DOC|XLS|PPT|MID|WAV|ZIP|RAR|PDF|CHM|RM|TXT|CERT|';
    foreach ($_FILES AS $code => $file)
    {
    /* 判断用户是否选择了文件 */
    if ((isset($file['error']) && $file['error'] == 0) || (!isset($file['error']) && $file['tmp_name'] != 'none'))
    {
    /* 检查上传的文件类型是否合法 */
    if (!check_file_type($file['tmp_name'], $file['name'], $allow_file_types))
    {
    echo json_encode(['code' => 60000,'msg' => sprintf('您上传了一个非法的文件类型。该文件名为:%s', $file['name'])]);exit;
    }
    else
    {
    //照片
    $logo_name = $user_id."_".time()."_".rand(1,1000).".jpg";
    $path = './../images/Image/'.date('Ym')."/";
    $to_path = ROOT_PATH.$path;
    if (!file_exists($to_path)){
    mkdir ($to_path);
    chmod($to_path,0777);
    }
    $file_name = $to_path.$logo_name;
    /* 判断是否上传成功 */
    if (move_upload_file($file['tmp_name'], $file_name)){
    $imgs = $imgs.$path.$logo_name.",";
    }
    else
    {
    //echo json_encode(['code' => 60001, 'msg' => '上传失败!请重新上传!']);exit;
    echo json_encode(['code' => 60001, 'msg' => sprintf('上传文件 %s 失败,请检查 %s 目录是否可写。', $file['name'], $to_path)]);exit;
    }
    }
    }
    }
    注:只要上传图片就会成功。

    第二种:数组形式

    代码实现

    /* 允许上传的文件类型 */
    $allow_file_types = '|GIF|JPG|PNG|BMP|SWF|DOC|XLS|PPT|MID|WAV|ZIP|RAR|PDF|CHM|RM|TXT|CERT|';
    foreach ($_FILES['imgs']['type'] AS $key => $val)
    {
    /* 判断用户是否选择了文件 */
    if ((isset($_FILES['imgs']['error'][$key]) &&$_FILES['imgs']['error'][$key] == 0) || (!isset($_FILES['imgs']['error'][$key]) && $_FILES['imgs']['error'][$key] != 'none'))
    {
    /* 检查上传的文件类型是否合法 */
    if (!check_file_type($_FILES['imgs']['tmp_name'][$key], $_FILES['imgs']['name'][$key], $allow_file_types))
    {
    echo json_encode(['code' => 60000,'msg' => sprintf('您上传了一个非法的文件类型。该文件名为:%s', $_FILES['imgs']['name'][$key])]);exit;
    }
    else
    {
    //照片
    $logo_name = $user_id."_".time()."_".rand(1,1000).".jpg";
    $path = './../images/Image/'.date('Ym')."/";
    $to_path = ROOT_PATH.$path;
    if (!file_exists($to_path)){
    mkdir ($to_path);
    chmod($to_path,0777);
    }
    $file_name = $to_path.$logo_name;
    /* 判断是否上传成功 */
    if (move_upload_file($_FILES['imgs']['tmp_name'][$key], $file_name)){
    $imgs = $imgs.$path.$logo_name.",";
    }
    else
    {
    //echo json_encode(['code' => 60001, 'msg' => '上传失败!请重新上传!']);exit;
    echo json_encode(['code' => 60001, 'msg' => sprintf('上传文件 %s 失败,请检查 %s 目录是否可写。', $file['name'], $to_path)]);exit;
    }
    }
    }
    }
    注:只接受名称为imgs的文件,并且是数组型。
    
    
    
  • 相关阅读:
    [题解] LuoguP1587 [NOI2016]循环之美
    [题解] LuoguP3705 [SDOI2017]新生舞会
    [题解] LuoguP3702 [SDOI2017]序列计数
    [题解] LuoguP6476 [NOI Online 2 提高组]涂色游戏
    [题解] LuoguP4240 毒瘤之神的考验
    [题解] LuoguP6156简单题
    [题解] LuoguP6055 [RC-02] GCD
    [题解] LuoguP5050 【模板】多项式多点求值
    AtCoder Grand Contest 028题解
    Codeforces Round #421 (Div. 1) 题解
  • 原文地址:https://www.cnblogs.com/f-rt/p/9950554.html
Copyright © 2011-2022 走看看