先给出Extjs代码:

Ext.define('MyApp.view.ui.MyForm', {    extend: 'Ext.form.Panel',

    height: 107,    width: 398,    bodyPadding: 10,    title: '上传图片',

    initComponent: function() {var me = this;        me.items = [            {                xtype: 'filefield',                name: 'file',                fieldLabel: '请选择图片',                anchor: '100%',                allowBlank:false,                regex: /((\.jpg)|(\.png)|(\.gif))$/i,                invalidText:'请选择正确的图片格式'            },            {                xtype: 'button',                text: '点击上传',                handler:function(btn){var form=btn.up('form').getForm();if(form.isValid())                    {                        form.submit({                            url:'pro.php',                            waitMsg:'正在上传中...',                            success:function(grid,action){                                    Ext.Msg.alert('信息提示',action.result.msg);                                },                            failure:function(grid,action){                                    Ext.Msg.alert('信息提示',action.result.msg);                            }

                        });                    }else                    {                        Ext.Msg.alert('信息提示','请选择正确的图片格式');                    }                }

            }        ];        me.callParent(arguments);    }});

Ext.onReady(function(){    Ext.create('MyApp.view.ui.MyForm',{

        renderTo:Ext.get('main')    });})

再给出服务器端代码(PHP):

<?php

if ($_FILES["file"]["error"] > 0)    {echo "{                success:false,                msg:'上传出错,请重试'            }";    }else    {if (file_exists("upload/" . $_FILES["file"]["name"]))          {echo "{                  success:false,                  msg:'文件已存在'                      }              ";          }else          {$now=time();//获取当前时间戳            $path_arr=pathinfo($_FILES["file"]["name"]);$new_file_name=$now.'.'.$path_arr['extension'];move_uploaded_file($_FILES["file"]["tmp_name"],"upload/".$new_file_name);echo "{                  success:true,                  msg:'上传成功'              }";          }    }

  ?>

解释一下pathinfo()函数,用来获取一个文件名中的后缀名,不带点号。下面是API中给的例子:

<?php$path_parts = pathinfo("/www/htdocs/index.html");echo $path_parts["dirname"] . "\n";//输出/www/htdocs echo $path_parts["basename"] . "\n";//输出index.htmlecho $path_parts["extension"] . "\n";//输出html?> 

转载于:https://www.cnblogs.com/crazymus/archive/2012/03/28/2422072.html

Extjs4创建简单的图片上传相关推荐

  1. python自动上传图片_使用Python实现一个简单的图片上传存储服务

    使用flask实现的一个简单的图片上传服务 设计初衷 对于图片的存储,有很多选择,一般采用云服务如(七牛,又拍等),但是国内的服务像七牛 自定义域名竟然需要域名备案(Excuse me,当初就是因为备 ...

  2. 一个.net6简单的图片上传(文件也可用)

    #一个.net6简单的图片上传(文件也可用) ##页面 @{ViewData["Title"] = "图片上传Demo"; }<form asp-acti ...

  3. alert()的功能_前端实现简单的图片上传小图预览功能

    <!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8" ...

  4. 用go来搭建一个简单的图片上传网站

    提前说明一下:代码参考了<Go语言编程>,稍有变动, 自己亲自玩了一遍. 之前玩过go web server, 现在来用go来搭建一个简单的图片上传网站, 工作目录是:~/photoweb ...

  5. 用jsp实现简单的图片上传功能

    用jsp实现简单的图片上传功能 1 先做一个页面,选择上传的图片 <body><form action="uploadServlet" enctype=" ...

  6. bootstrap-fileinput的简单使用(图片上传和编辑)

    简介: 一款非常优秀的HTML5文件上传插件,支持bootstrap 3.x 和4.x版本,具有非常多的特性:多文件选择.这个插件能最简单的帮你完成文件上传功能,且使用bootstrap样式.还支持多 ...

  7. tp3.2简单的图片上传实现

    //定义文件上传相关目录常量 define('ROOT_PATH', __DIR__); define('UPLOAD_PATH', '/Public/Uploads/'); //现在model封装一 ...

  8. 使用 PHP 实现简单的图片上传

    一.HTML 表单准备 <!doctype html> <html lang="en"><head><meta charset=" ...

  9. jquery批量上传图片 java_简单多图片上传 jquery+java 代码

    /** 添加歌曲 */ function addSong(){ var id=$("#_activity_id").val(); window.location.href = &q ...

  10. 简单的图片上传和下载

    一.图片的上传 1.图片的来源无非是照相和图库的选择 将选择的图片进行封装到bean类中进行返回,之后通过上传的方式去上传 2.上传的方式也是两种方式,通过的字符串或者流的方式(先建立链接在通过流) ...

最新文章

  1. Educational Codeforces Round 21 E. Selling Souvenirs(背包)
  2. Mybatis的一对多查询
  3. windows10小鹤双拼注册表
  4. vue网址路由的实时检测
  5. linux 下脚本安装 mysql_linux(centos7)下编译安装mysql(数据库)一键安装详解+脚本文件...
  6. C++ primer 第15章 面向对象程序设计
  7. esp32查询剩余内存_SQL 查询语句先执行 SELECT?兄弟你认真的么?
  8. python执行的命令_如何在Python中执行外部命令
  9. linux如何运行java程序,Linux环境下运行简单java程序
  10. CVTE软件技术支持面试总结
  11. labview制成app_图形化编程软件(labview)
  12. 国标GB28181协议视频平台EasyGBS国标级联到上级宇视平台,不断切换在线和离线状态是什么原因?
  13. 【unprofessional use Blog003】基因数据库NCBI相关介绍
  14. 逃离北上广的成本越来越高了
  15. 面渣逆袭:JVM经典五十问,这下面试稳了
  16. C#数字转字母,ASCII码转换
  17. latch: cache buffers chains 阻塞 buffer busy waits
  18. 2020度小满金融春招笔试
  19. 磁条卡风控 建模方案
  20. 江苏省2022年普通高校专转本选拔考试——计算机专业大类专业综合基础理论试卷

热门文章

  1. window.onerror=hide_error_message;
  2. 第五天 面向对象软件分析与设计
  3. Crontab 实例
  4. SQL“多字段模糊匹配关键字查询”
  5. [Java][Android][Process] 分享 Process 执行命令行封装类
  6. typescript的类型转化
  7. await和async
  8. python数据分析师网易城市数据团_城市数据分析师-网易云课堂 - 网易云课堂
  9. 计算机应用计算专业难吗,计算机应用专业好学吗
  10. 网站并发cpu占用率_来,控制一下 goroutine 的并发数量