PHP

PHP+jQuery+Ajax倣淘寶多文件上傳按鈕單文件上傳

字號+ 編輯: 国内TP粉 修訂: 种花家 來源: ThinkPHP 2023-09-10 我要說兩句(0)

用代碼直觀說明如何實現多文件上傳按鈕和單文件上傳

废话不多说,直接上附件;

HTML上传表单代码:

<form class="imageform" method="post" enctype="multipart/form-data" action="upload.php"> 
    <div class="up_status" style="display:none"><img src="loader.gif" alt="uploading" /></div> 
    <div  class="btn up_btn"> 
        <span>添加图片</span> 
        <input class="photoimg" type="file" name="photoimg"> 
    </div> 
</form> 
<div class="preview_img"></div>

引入样式和上传插件jquery.wallform.js

<link rel="stylesheet" type="text/css" href="css/style.css" /> 
<script type="text/javascript" src=" 
<script type="text/javascript" src="jquery.wallform.js"></script>

jQuery代码

$("body").on("change", ".photoimg", 
function() { 
    var obj = $(this); 
    var imageForm = obj.parents(".imageform"); 
    var preview_img = imageForm.next(".preview_img"); 
    var btn = imageForm.find(".up_btn"); 
 
    imageForm.ajaxForm({ 
        target: preview_img, 
        beforeSubmit: function() { 
            imageForm.next("div.preview_img").html(""); 
            preview_img.hide(); 
            btn.hide(); 
        }, 
        success: function() { 
            preview_img.show(); 
            btn.show(); 
        }, 
        error: function() { 
            btn.show(); 
            preview_img.hide(); 
        } 
    }).submit(); 
});

PHP后端上传处理代码 upload.php

if (isset($_POST) and $_SERVER['REQUEST_METHOD'] == "POST") { 
    $name = $_FILES['photoimg']['name']; 
    $size = $_FILES['photoimg']['size']; 
 
    if (empty($name)) { 
        echo '请选择要上传的图片'; 
        exit; 
    } 
    $ext = extend($name); 
    if (!in_array($ext, $extArr)) { 
        echo '图片格式错误!'; 
        exit; 
    } 
    if ($size > (1000 * 1024)) { 
        echo '图片大小不能超过1M'; 
        exit; 
    } 
    $image_name = time() . rand(100, 999) . "." . $ext; 
    $tmp = $_FILES['photoimg']['tmp_name']; 
    if (move_uploaded_file($tmp, $path . $image_name)) { 
        echo '<img src="' . $path . $image_name . '"  class="preview">'; 
    } else { 
        echo '上传出错了!'; 
    } 
    exit(); 
}

閲完此文,您的感想如何?
  • 有用

    0

  • 沒用

    0

  • 開心

    0

  • 憤怒

    0

  • 可憐

    0

1.如文章侵犯了您的版權,請發郵件通知本站,該文章將在24小時内刪除;
2.本站標注原創的文章,轉發時煩請注明來源;
3.交流群: PHP+JS聊天群

相關課文
  • mac開發接入微信公衆號接口返回報錯 cURL error 56: SSLRead() return error -9806

  • pecl安裝程序時報錯Array and string offset access syntax with curly braces is no longer supported

  • PHP的換行符是什麽

  • 由於商家傳入的H5交易參數有誤,該筆交易暫時無法完成,請聯系商家解決

我要說說
網上賓友點評