PHP使用PHPEXCEL导入Excel

下载PHPEXCEL 后放到项目里。

?





1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

public function InExcel() {

    //设定缓存模式为经gzip压缩后存入cache(PHPExcel导入导出及大量数据导入缓存方式的修改 )

    $cacheMethod
= PHPExcel_CachedObjectStorageFactory::cache_in_memory_gzip;

    $cacheSettings
= array();

    PHPExcel_Settings::setCacheStorageMethod($cacheMethod, $cacheSettings);

    $objPHPExcel
= new PHPExcel();

    //读入上传文件

    if
($_POST) {

        $objPHPExcel
= PHPExcel_IOFactory::load($_FILES["inputExcel"]["tmp_name"]);

        //内容转换为数组

        $indata
= $objPHPExcel->getSheet(0)->toArray();

        //print_r($indata);

        //excel  sheet个数

        //echo $objPHPExcel->getSheetCount();

        //把数据新增到mysql数据库中

        $arr
= array();

        $j
= 0;

        $model
= D(‘goods_unit‘);

        //根据具体情况修改

        if
(count($indata) == 1) {

            //根据具体情况修改

            $arr[0] = array("hang"
=> 0, "Cause"
=> "无记录!");

            $this->assign(‘errorss‘, $arr);

            $list
= $this->menu();

            $this->assign(‘menu‘, $list);

            $this->display(‘Base:baseunit‘, ‘utf-8‘);

        } else
{

            if
($indata[0][0] == "单位名称") {

                for
($i = 1; $i < count($indata); $i++) {

                    $all[‘UnitName‘] = $indata[$i][0];

                    $w
= $model->where($all)->select();

                    if
($w !== null) {

                        $arr[$j] = array("hang"
=> $i + 1, "Cause"
=> "该单位已存在");

                        $j++;

                        continue;

                    }

                    $result
= $model->add($all);

                    if
(false == $result) {

                        $arr[$j] = array("hang"
=> $i + 1, "Cause"
=> "写入单位表时失败");

                        $j++;

                        continue;

                    }

                }

                if
($arr == null) {

                    $arr[0] = array("hang"
=> 0, "Cause"
=> "导入Excel成功");

                }

                $this->assign(‘errorss‘, $arr);

                $list
= $this->menu();

                $this->assign(‘menu‘, $list);

                $this->display(‘Base:baseunit‘, ‘utf-8‘);

            } else
{

                $arr[0] = array("hang"
=> 0, "Cause"
=> "上传文件格式不正确!");

                $this->assign(‘errorss‘, $arr);

                $list
= $this->menu();

                $this->assign(‘menu‘, $list);

                $this->display(‘Base:baseunit‘, ‘utf-8‘);

            }

        }

    } else
{

        $arr[0] = array("hang"
=> 0, "Cause"
=> "服务器未检测到有上传文件!");

        $this->assign(‘errorss‘, $arr);

        $list
= $this->menu();

        $this->assign(‘menu‘, $list);

        $this->display(‘Base:baseunit‘, ‘utf-8‘);

    }

}

  以下是前台代码

<script>
$("#ProjectToolbar").on(‘click‘, "a[name=‘haveExcel‘]", function(data) {
$w= $(‘#mk‘).html().trim();
if($w=="选择上传文件"){
$("#inputFile").click();
}else{
if($(‘#inputFile‘).val()!=null){
$("#submitexcel").click();
}else{
alert("还未选择文件");
$(‘#mk‘).html("选择上传文件");
}
}
});

function dohtml() {
$w= $(‘#mk‘).html().trim();
if($w=="选择上传文件"){
$(‘#mk‘).html("上传所选文件");
}else{
$(‘#mk‘).html("选择上传文件");
}
}
</script>
<div id="ProjectToolbar">
<form action="__URL__/InExcel" id="formExcel" method="post" enctype="multipart/form-data">
<input type="file" name="inputExcel" id="inputFile" style="display:none;" onchange="dohtml()">
<a name="haveExcel" id="mk" href="javascript:;">选择上传文件</a>
<input type="submit" name="submite" id="submitexcel" value="提交" style="display:none;" />
</form>
</div>

  用ajax不知道怎么做。

时间: 2024-08-01 10:06:48

PHP使用PHPEXCEL导入Excel的相关文章

Thinkphp 用PHPExcel 导入Excel

搞了个简单的Excel导入, 用的是PHPExcel(百科:用来操作Office Excel文档的一个PHP类库, 基于微软的OpenXML标准和PHP语言) 好, 不说了, 开始吧... 首先得有PHPExcel类库, 点这里下载 https://github.com/Zmwherein/PHPExcel.git 然后把它放在 \ThinkPHP\Library\Vendor(个人喜好, 能引入就行了) 如图: PHPExcel.php 类似一个入口文件. 可以进去看看里面写的方法是怎个跑法.

使用PHPExcel导入Excel到MySql

1.连接数据库的connection.php文件 <?php //修改下面代码来联接数据库 // mysql_connect打开一个到 MySQL 服务器的连接,如果成功则返回一个 MySQL 连接标识,失败则返回 FALSE. $mysql=mysql_connect("localhost","root","root"); //integer mysql_connect(主机,用户名,口令); mysql_select_db("

YII使用PHPExcel导入Excel文件的方法

1.下载phpexcel,将压缩包中的classes复制到protected/extensions下并修改为PHPExcel. 2.修改YII配置文件config/main.php [php] view plaincopy 'import'=>array( 'application.extensions.PHPExcel.PHPExcel', ), (以下处理PHPExcel autoload和YII autoload相冲突的方法任选其一,推荐第4种,最符合YII标准) 3.1.修改PHPExc

phpexcel导入excel表格

html代码 <form action="{:U('Mall/updExcel')}" method="POST" enctype="multipart/form-data"> //提交form表单到Mall控制器下的upExcel方法中 <div style="float:left;width:41%;"> <div style="float:left;"> <i

ThinkPHP导入Excel文件(使用PHPExcel)

主要知识点,用PHPExcel导入Excel数据经过这几天测试还是可以,xls,xlsx都可以获取Excel的数据.下载地址:http://phpexcel.codeplex.com/ O.开发思路 1.先把Excel文件上传到服务器 2.获取服务器Excel文件内容 3.写入数据库 一.上传Excel文件,使用PHP里自带的上传方法 “\Think\Upload();”,可以很方便的实现.为此我整理下使用这个方法的最简单方式 /** * TODO 上传文件方法 * @param $fileid

Yii 2 &mdash;&mdash; 导入Excel文件

导入Excel文件需要两个扩展:PHPOffice/PHPExcel和moonlandsoft/yii2-phpexcel,这两个扩展中,PHPOffice/PHPExcel是基础的Excel文件接口,moonlandsoft/yii2-phpexcel提供了导入和导出的功能. 引入PHPOffice/PHPExcel 官网地址: https://github.com/PHPOffice/PHPExcel 下载后解压,拷贝到vendor/PHPExcel目录下,整体目录结构如下: PHPExce

使用PHPExcel导入导出excel格式文件

使用PHPExcel导入导出excel格式文件 作者:zccst 由于导出使用较多,下面是导出实现过程. 第一步,将PHPExcel的源代码复制到项目的lib下 文件包括:PHPExcel.php 和 文件夹PHPExcel 源代码见附件 注1:源代码是zip格式,能在windows和linux通用. 注2:PHPExcel.zip是干净代码,可以直接引用.PHPExcel2.zip有svn记录,不适合直接引用. 第二步:在需要导出的handler页面中引用 1,在头部引入三个文件 Php代码 

php利用PHPExcel类导出导入Excel用法

PHPExcel类是php一个excel表格处理插件了,下面我来给大家介绍利用PHPExcel类来导入与导出excel表格的应用方法,有需要了解的朋友不防参考参考(PHPExcel自己百度下载这里不介绍了). 导出Excel用法 //设置环境变量(新增PHPExcel) 1 set_include_path('.'. PATH_SEPARATOR . Yii::app()->basePath.'/lib/PHPExcel' . PATH_SEPARATOR . 2 3 get_include_p

ThinkPHP使用PHPExcel实现Excel数据导入导出完整实例

这篇文章主要介绍了ThinkPHP使用PHPExcel实现Excel数据导入导出,非常实用的功能,需要的朋友可以参考下 本文所述实例是使用在Thinkphp的开发框架上,要是使用在其他框架也是同样的方法,很多人可能不能正确的实现Excel的导入导出,问题基本上都是phpExcel的核心类引用路径出错造成的,如果有问题大家务必要对路劲是否引用正确进行测试. 具体操作步骤如下: (一)导入Excel 第一,在前台html页面进行上传文件:如: <form method="post"