This article introduces the combination of JQuery and PHP to realize the dynamic progress bar upload display function. This article introduces it to you in detail step by step. Friends who are interested should take a look together
Windows Modification method under the environment
#Step 1: Modify the POST file size limit under php5
1. Edit php.ini
Found: max_execution_time = 30, this is the maximum time for each script to run, in seconds, change to: max_execution_time = 150
Found: max_input_time = 60, this is what each script can consume The time, the unit is also seconds, modified to:
max_input_time = 300
Found: memory_limit = 128M, this is the maximum memory consumed by the script running, change the value according to your needs, modified here to :memory_limit = 256M
Found: post_max_size = 8M, the maximum data submitted by the form is 8M, this item does not limit the size of a single uploaded file, but limits the submitted data of the entire form. The scope of the restriction includes all content submitted by the form. For example: when posting a post, the post title, content, attachments, etc.... Modify here to: post_max_size = 20M
Find: upload_max_filesize = 2M, the maximum allowed size of the uploaded file , modified to: upload_max_filesize = 10M (the size here is determined according to the demand)
Step 2: File upload size control in the Apache environment
Modify the directory located in Apahce Add the following content to httpd.conf
LimitRequestBody 10485760
which is 10M=10*1024*1024. Some articles mentioned that it should be changed to 600000000
Restart apache, you can see the size you want in the settings
HTML part
<form action="index/index/upload" method="POST" enctype="multipart/from-data" id="uploadform" onSubmit="return false"> <p class="inpuys"> <input type="file" name="file" id="uploadfile" value="选择文件" class="cho"> <input type="submit" value="上传" id="submit_btn" class="sub btn btn-info"> </p> </form>
JS part
<script type="text/javascript" src="{$Think.config.web_root}js/jquery.min.js"></script> <script type="text/javascript" src="{$Think.config.web_root}js/jquery.form.js"></script> <script src="http://cdn.bootcss.com/bootstrap/3.3.0/js/bootstrap.min.js"></script> <script type="text/javascript"> $(document).ready(function(){ var progressbox=$("#progressbox"); var progressbar=$("#progressbar"); var progress=$("#progress"); var completed="0%"; var options={ beforeSubmit:beforeSubmit, uploadProgress:OnProgress, success:afterSuccess, resetForm:true }; $("#uploadform").submit(function(){ $(this).ajaxSubmit(options); return false; }); function OnProgress(event,position,total,percentComplete ) { progressbar.width(percentComplete + "%"); progress.html(percentComplete + "%"); } function afterSuccess(){ $("#output").html("上传完成!!"); } function beforeSubmit(){ if (!$("#uploadfile").val()) { $("#output").html("请选择文件!!"); return false; } progressbar.width(completed); progress.html(completed); } }); </script>
THINKPHP method part
public function upload(){ // 获取表单上传文件 例如上传了001.jpg $file = request()->file('file'); // 移动到框架应用根目录/public/uploads/ 目录下 $info = $file->move(ROOT_PATH . 'public' . DS . 'uploads'); if($info){ return "上传成功"; }else{ // 上传失败获取错误信息 echo $file->getError(); } }
The above is the entire content of this article. Thank you everyone for reading. For more related content, please pay attention to the PHP Chinese website!
Related recommendations:
ThinkPHP and Ajax implement secondary linkage drop-down menu
The above is the detailed content of JQuery and PHP realize upload display of dynamic progress bar. For more information, please follow other related articles on the PHP Chinese website!

Thedifferencebetweenunset()andsession_destroy()isthatunset()clearsspecificsessionvariableswhilekeepingthesessionactive,whereassession_destroy()terminatestheentiresession.1)Useunset()toremovespecificsessionvariableswithoutaffectingthesession'soveralls

Stickysessionsensureuserrequestsareroutedtothesameserverforsessiondataconsistency.1)SessionIdentificationassignsuserstoserversusingcookiesorURLmodifications.2)ConsistentRoutingdirectssubsequentrequeststothesameserver.3)LoadBalancingdistributesnewuser

PHPoffersvarioussessionsavehandlers:1)Files:Default,simplebutmaybottleneckonhigh-trafficsites.2)Memcached:High-performance,idealforspeed-criticalapplications.3)Redis:SimilartoMemcached,withaddedpersistence.4)Databases:Offerscontrol,usefulforintegrati

Session in PHP is a mechanism for saving user data on the server side to maintain state between multiple requests. Specifically, 1) the session is started by the session_start() function, and data is stored and read through the $_SESSION super global array; 2) the session data is stored in the server's temporary files by default, but can be optimized through database or memory storage; 3) the session can be used to realize user login status tracking and shopping cart management functions; 4) Pay attention to the secure transmission and performance optimization of the session to ensure the security and efficiency of the application.

PHPsessionsstartwithsession_start(),whichgeneratesauniqueIDandcreatesaserverfile;theypersistacrossrequestsandcanbemanuallyendedwithsession_destroy().1)Sessionsbeginwhensession_start()iscalled,creatingauniqueIDandserverfile.2)Theycontinueasdataisloade

Absolute session timeout starts at the time of session creation, while an idle session timeout starts at the time of user's no operation. Absolute session timeout is suitable for scenarios where strict control of the session life cycle is required, such as financial applications; idle session timeout is suitable for applications that want users to keep their session active for a long time, such as social media.

The server session failure can be solved through the following steps: 1. Check the server configuration to ensure that the session is set correctly. 2. Verify client cookies, confirm that the browser supports it and send it correctly. 3. Check session storage services, such as Redis, to ensure that they are running normally. 4. Review the application code to ensure the correct session logic. Through these steps, conversation problems can be effectively diagnosed and repaired and user experience can be improved.

session_start()iscrucialinPHPformanagingusersessions.1)Itinitiatesanewsessionifnoneexists,2)resumesanexistingsession,and3)setsasessioncookieforcontinuityacrossrequests,enablingapplicationslikeuserauthenticationandpersonalizedcontent.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Dreamweaver Mac version
Visual web development tools

VSCode Windows 64-bit Download
A free and powerful IDE editor launched by Microsoft

SecLists
SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.
