php 上传图片返回预览,PHP图片上传实例分析[包含预览]

图片上传与文件上传在php中都是一样直接使用move_uploaded_file($_FILES["filename"]["tmp_name"]就可以实现了,下面我来给大家分享一个站长分享文件上传例子。

前期需要了解的知识点

move_uploaded_file()文件上传函数

 代码如下复制代码

if(move_uploaded_file($_FILES["filename"]["tmp_name"])

{

echo '文件上传成功';

}

$_FILES php全局变量

$_FILES: 经由 HTTP POST 文件上传而提交至脚本的变量。类似于旧数组 $HTTP_POST_FILES 数组(依然有效,但反对使用)

 代码如下复制代码

$_FILES['myFile']['name']   客户端文件的原名称。

$_FILES['myFile']['type']   文件的 MIME 类型,需要浏览器提供该信息的支持,例如"image/gif"。

$_FILES['myFile']['size']   已上传文件的大小,单位为字节。

$_FILES['myFile']['tmp_name']   文件被上传后在服务端储存的临时文件名,一般是系统默认。可以在php.ini的upload_tmp_dir 指定,但用 putenv() 函数设置是不起作用的。

$_FILES['myFile']['error']   和该文件上传相关的错误代码。['error'] 是在 PHP 4.2.0 版本中增加的。下面是它的说明:(它们在PHP3.0以后成了常量)

UPLOAD_ERR_OK             值:0; 没有错误发生,文件上传成功。

UPLOAD_ERR_INI_SIZE      值:1; 上传的文件超过了 php.ini 中 upload_max_filesize 选项限制的值。

UPLOAD_ERR_FORM_SIZE  值:2; 上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值。

UPLOAD_ERR_PARTIAL          值:3; 文件只有部分被上传。

UPLOAD_ERR_NO_FILE          值:4; 没有文件被上传。    值:5; 上传文件大小为0.

核心文件:

upimg.htm

 代码如下复制代码

/p>

"http://www.w3.org/TR/html4/loose.dtd">

上传图片

function $(id){

return document.getElementById(id);

}

function ok(){

$("logoimg").src = $("filename").value;

}

请选择上传的图片

注意:请上传120*45像素的GIF或者jpg格式的logo图片

logo预览:bg-02.gif

uploadf.php

if(!empty($_GET[submit]))

{

$path="uploadfiles/pic/"; //上传路径

//echo $_FILES["filename"]["type"];

if(!file_exists($path))

{

//检查是否有该文件夹,如果没有就创建,并给予最高权限

mkdir("$path", 0700);

}//END IF

//允许上传的文件格式

$tp = array("image/gif","image/pjpeg","image/png");

//检查上传文件是否在允许上传的类型

if(!in_array($_FILES["filename"]["type"],$tp))

{

echo "格式不对";

exit;

}//END IF

if($_FILES["filename"]["name"])

{

$file1=$_FILES["filename"]["name"];

$file2 = $path.time().$file1;

$flag=1;

}//END IF

if($flag) $result=move_uploaded_file($_FILES["filename"]["tmp_name"],$file2);

//特别注意这里传递给move_uploaded_file的第一个参数为上传到服务器上的临时文件

if($result)

{

//echo "上传成功!".$file2;

echo "

echo "alert(\"上传成功!\");";

//echo " location='add_aaa.php?pname=$file2'";

echo "";

echo("");

echo "图片名称:".$file2;

}//END IF

} else {

echo "file is null!";

}

?>

调用示例文件:

testUpload.htm

 代码如下复制代码

/p>

"http://www.w3.org/TR/html4/loose.dtd">

上传图片

function setFile(f1){

document.frm.logoImg.value=f1;

}

请选择上传的图片

上传图片

此程序不足之处分析

上传预览功能

 代码如下复制代码

function $(id){

return document.getElementById(id);

}

function ok(){

$("logoimg").src = $("filename").value;

}

这段代码其实就是一个鸡肋了,在有一些浏览器下是不兼容了,但不会影响到图片上传功能。

程序安全

对于在上传处我们并未进行数据大小限制与程序上传文件类型进行限制,这样可以利用它来上传一些像php文件,这样你的网站就不安全了哦。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值