首页 > 后端开发 > php教程 > php 图片上传并预览效果_PHP教程

php 图片上传并预览效果_PHP教程

WBOY
发布: 2016-07-20 11:08:49
原创
1741 人浏览过

php 图片上传并预览效果本文章是一款图片上传代码,他可以把上传到服务器的图片在进行预览修改,如果是你想的你就可以保存了,不是可以删除再重新上传哦。

php教程 图片上传并预览效果
本文章是一款图片上传代码,他可以把上传到服务器的图片在进行预览修改,如果是你想的你就可以保存了,不是可以删除再重新上传哦。
*/
if(!isset($_session))session_start();

/**2010-6-22
 * $data 数组类型    包含以下变量
 -------------------------------
 * $sub_type        submit类型(upload:上传按钮    delete:删除按钮),默认upload
 * $file            通过表单获取的$_files['filename']数组
 * $img_tag_id        预览图片的php 图片上传并预览效果_PHP教程的id值
 * $img_dir            上传图片的目录
 * $max_file_size    单位m(兆),默认:1m
 * $type_array        允许的上传的图片类型(默认:image/pjpeg、image/jpeg、image/gif)
 **/
function upload($data){
    if(!$data['file']){
        echo '<script>alert("file不能为空!");</script>';exit;
    }
    if(!$data['img_tag_id']){
        echo '<script>alert("预览图片标签id不能为空!");</script>';exit;
    }
    if(!$data['img_dir']){
        echo '<script>alert("图片上传目录不能为空!");</script>';exit;
    }
    if(!isset($data['max_file_size'])){
        $data['max_file_size'] = 1024 * 1024;
    }else{
        $data['max_file_size'] = $data['max_file_size'] * 1024 * 1024;
    }
    if(!isset($data['type_array'])){
        $data['type_array'] = array('image/pjpeg', 'image/jpeg', 'image/gif');
    }
    if(!isset($data['sub_type'])){
        $data['sub_type'] = 'upload';
    }

    $imgpath = '';
    if(isset($data['sub_type']) && $data['sub_type'] == 'delete'){
        if(isset($_session['name']) && $_session['name']){
            if(is_file($_session['imgpath'])){
                $b = unlink($_session['imgpath']);
            }
            unset($_session['name'], $_session['imgpath']);
            if(!isset($_session['name'])){
                echo '<script>alert("删除成功!");</script>';
                echo '<script>parent.document.getelementbyid("'.$data['img_tag_id'].'").style.display = "none";</script>';
            }else{
                echo '<script>alert("删除失败!");</script>';
            }
        }else{
            echo '<script>alert("没有稿件!");</script>';
        }exit;
    }

    if(isset($_session['imgpath']) && $_session['imgpath']){
        echo '<script>alert("稿件已经存在,要想重新上传请删除原来的稿件!");</script>';exit;
    }
    if(!in_array($data['file']['type'], $data['type_array'])){
        echo '<script>alert("稿件类型不匹配,请上传.jpg、.gif和.png格式的图片!");</script>';exit;
    }
    if($data['file']['size'] > $data['max_file_size']){
        echo '<script>alert("您上传的稿件过大,请选择2m以下的图片上传!");</script>';exit;
    }

    if(!is_dir($data['img_dir'])){
        @mkdir($data['img_dir'], 0777, true);
    }
    $imgpath    = $data['img_dir'].'/'.date('his', time()).rand(100, 999).$data['file']['name'];
    $isupload    = move_uploaded_file($data['file']['tmp_name'], $imgpath);
    if(!$isupload){
        echo '<script>alert("稿件上传失败,请尝试重新上传!");</script>';exit;
    }else{
        echo '<script>alert("稿件上传成功!");</script>';
    }
    $_session['name']        = $data['file']['name'];
    $_session['imgpath']    = $imgpath;

    return $imgpath;
}

/*test_start*/
$sub_type = '';
if(isset($_post['submit_upload']))$sub_type = 'upload';
if(isset($_post['submit_delete']))$sub_type = 'delete';
if($sub_type){//echo '<script>alert("'.$sub_type.'");</script>';exit;
    $data = array(    'sub_type'        => $sub_type,
                    'file'            => $_files['file'],
                    'img_tag_id'    => 'picview',
                    'img_dir'        => 'upload_img',
                  );
    $imgpath = upload($data);
}else{
    $imgpath = isset($_session['imgpath'])? $_session['imgpath']: '';
}
?>


   
   
   
   

php 图片上传并预览效果_PHP教程

<script><br />if("<?php echo $imgpath; ?>"){<br /> parent.document.getelementbyid("picview").src = "<?php echo $imgpath; ?>";<br /> parent.document.getelementbyid("picview").style.display = "block";<br />}<br /></script>


www.bkjia.comtruehttp://www.bkjia.com/PHPjc/444841.htmlTechArticlephp 图片上传并预览效果本文章是一款图片上传代码,他可以把上传到服务器的图片在进行预览修改,如果是你想的你就可以保存了,不是可...
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板