Home >Backend Development >PHP Tutorial >File upload progress bar php code_PHP tutorial
File upload progress bar php code This article uses a php plug-in to instantiate the php file upload progress bar function. The method is relatively simple, because there are components, so as long as you follow others' instructions, you can instantiate the php large file upload function. .
File upload progress bar php tutorial code
This article uses a php plug-in example to post the php file upload progress bar function. The method is relatively simple, because there are components, so you only need to follow what others want. Example of php large file upload function.
There are two methods I know so far. One is to use the apc extension module written by rasmus lerdorf, the founder of PHP (http://pecl.php.net/package/apc). The other method is Use the pecl extension module uploadprogress to implement (http://pecl.php.net/package/uploadprogress). Here are two examples of separate implementations for reference. For more flexible applications, you can modify them according to your own needs.
apc implementation method:
Install apc, refer to the official documentation for installation, you can use the pecl module installation method to quickly and easily, not explained here
Configure php.ini, set the parameter apc .rfc1867=1, so that apc supports the upload progress bar function. There are instructions in the apc source code documentation
How to implement the php file upload progress bar: install apc, refer to the official documentation for installation, you can The installation method using the pecl module is quick and simple. There is no description here of configuring php.ini. Set the parameter apc.rfc1867=1 to enable apc to support the upload progress bar function. There is a code example in the apc source code description document:
if ($_server['request_method']=='post'){//Upload request
$status=apc_fetch('upload_'.$_post['apc_upload_progress']);
$status['done'] =1;
echojson_encode($status);//Output to the ajax call in the client page, please find relevant documents yourself
exit;
}elseif(isset($_get['progress_key']) ){//Read upload progress
$status=apc_fetch('upload_'.$_get['progress_key']);
echojson_encode($status);
exit;
}else{
//Other codes, such as upload forms, etc.
}
Uploadprogress module implementation method: Use the pecl module installation method to install the module's php file upload progress bar implementation method. Set uploadprogress.file.filename_template = in php.ini "/tmp/upd_%s.txt"
if($_server['request_method']=='post'){
if(is_uploaded_file($_files['upfile']['tmp_name' ])){
$upload_dir='your_path/';
$ext=strrchr($_files['video']['name'],'.');
$sessid=$_post[ 'upload_identifier'];
$tmpfile=$upload_dir.$sessid;
$sessfile=$upload_dir.$sessid.$ext;
if(move_uploaded_file($_files['upfile']['tmp_name' ],$tmpfile)){
//Upload successful
}else{
//Upload failed
}else{
//Upload error
}elseif(! empty($_get['sessid'])){
header("expires:mon,26jul199705:00:00gmt");
header("last-modified:".gmdate("d,dmyh:i :s")."gmt");
header("cache-control:no-store,no-cache,must-revalidate");
header("cache-control:post-check=0, pre-check=0′,false);
header("pragma:no-cache");
header("content-type:text/html;charset=utf-8′);
$unique_id=$_get['sessid'];
$uploadvalues=uploadprogress_get_info($unique_id);
if(is_array($uploadvalues)){
echo json_encode($uploadvalues);
}else{
//Reading progress failed, additional processing logic
}
}else{
//Display upload form
}
pecl extension module uploadprogress implementation.
Specific application analysis of ajax technology based on php
Specific solution to limit the size of uploaded files in php
Specific implementation method of batch uploading images in php
Dynamic multi-file upload in php Specific code sharing
Specific analysis of the PHP universal file upload class. Here are two examples of separate implementations for reference. For more flexible applications, you can modify them according to your own needs.
How to implement the PHP file upload progress bar of apc:
Install apc, refer to the official documentation for installation, you can use the pecl module installation method to quickly and easily