Heim >Backend-Entwicklung >PHP-Tutorial >Ajax & PHP 边学边练 之五 图片处理_PHP教程

Ajax & PHP 边学边练 之五 图片处理_PHP教程

WBOY
WBOYOriginal
2016-07-21 14:55:28747Durchsuche

  在上一篇中讲解了如何通过Ajax提交表单并由PHP处理底层数据,本篇将主要介绍图片的上传与处理。对于文件的上传很简单,只需一个Form便可实现,再通过PHP将源文件上传到目标目录。先上个效果图:

upload

  Sample6_1.php 中创建Form:

Copy to ClipboardLiehuo.Net Codes引用的内容:[www.bkjia.com] //显示上传状态和图片

//上传文件需要定义enctype,为了显示图片将target设为uploadframe
enctype="multipart/form-data" target="uploadframe">
Upload a File:


//上传文件


上传图片函数 uploadimg:

Copy to ClipboardLiehuo.Net Codes引用的内容:[www.bkjia.com] function uploadimg(theform){
//提交Form
theform.submit();
//在showimg
中显示上传状态
setStatus ("Loading...","showimg");
}
//上传状态函数
function setStatus (theStatus, theObj){
obj = document.getElementById(theObj);
if (obj){
obj.innerHTML = "
" + theStatus + "
";
}
}

process_upload.php 提供文件上传功能:

Copy to ClipboardLiehuo.Net Codes引用的内容:[www.bkjia.com] //提供图片类型校验
$allowedtypes = array("image/jpeg","image/pjpeg","image/png", "image/x-png","image/gif");
//文件存放目录
$savefolder = "images";

//如果有文件上传就开始干活
if (isset ($_FILES['myfile'])){
//检查上传文件是否符合$allowedtypes类型
if (in_array($_FILES['myfile']['type'],$allowedtypes)){
if ($_FILES['myfile']['error'] == 0){
$thefile = "$savefolder/".$_FILES['myfile']['name'];
//通过move_uploaded_file上传文件
if (!move_uploaded_file($_FILES['myfile']['tmp_name'], $thefile)){
echo "There was an error uploading the file.";
}
else{
?>
br />"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">






Ajax & PHP 边学边练 之五 图片处理_PHP教程


}
}
}
}
?>

上面代码最后部分的doneloading 函数就是用来显示图片及修改图片尺寸大小。其中会用到thumb.php,它会在images目录中生成出源图片的大、中、小三个尺寸,有兴趣可以研究一下。欢迎大家拍砖~

源码下载:Sample6.rar

转自:http://www.cnblogs.com/gnielee/

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/364410.htmlTechArticle在上一篇中讲解了如何通过Ajax提交表单并由PHP处理底层数据,本篇将主要介绍图片的上传与处理。对于文件的上传很简单,只需一个Form便...
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn