数据库导入Exel,输入到浏览器

db.php

<?php
	require dirname(__FILE__)."/dbconfig.php";//引入配置文件

	class db{
		public $conn=null;

		public function __construct($config){//构造方法 实例化类时自动调用
				$this->conn=mysql_connect($config[‘host‘],$config[‘username‘],$config[‘password‘]) or die(mysql_error());//连接数据库
				mysql_select_db($config[‘database‘],$this->conn) or die(mysql_error());//选择数据库
				mysql_query("set names ".$config[‘charset‘]) or die(mysql_error());//设定mysql编码
		}
		/**
		**根据传入sql语句 查询mysql结果集
		**/
		public function getResult($sql){
			$resource=mysql_query($sql,$this->conn) or die(mysql_error());//查询sql语句
			$res=array();
			while(($row=mysql_fetch_assoc($resource))!=false){
				$res[]=$row;
			}
			return $res;
		}
		/**
		** 根据传入年级数 查询每个年级的学生数据
		**/
		public function getDataByGrade($grade){
			$sql="select username,score,class from user where grade=".$grade." order by score desc";
			$res=self::getResult($sql);
			return $res;
		}

		/**
		** 查询所有的年级
		**/
		public function getAllGrade(){
			$sql="select distinct(grade) from user  order by grade asc";
			$res=$this->getResult($sql);
			return $res;
		}

		/**
		**根据年级数查询所有的班级
		**/
		public function getClassByGrade($grade){
			$sql="select distinct(class) from user where grade=".$grade." order by class asc";
			$res=$this->getResult($sql);
			return $res;
		}

		/**
		**根据年级数班级数查询学生信息
		**/
		public function getDataByClassGrade($class,$grade){
			$sql="select username,score from user where class=".$class." and grade=".$grade." order by score desc";
			$res=$this->getResult($sql);
			return $res;
		}
	}
?>

 conf.php

<?php
	$phpexcel=array(
			‘host‘=>"127.0.0.1",
			"username"=>"root",
			"password"=>"",
			"database"=>"phpexcel",
			"charset"=>"utf8"
	);
?>

export.php

<?php
	$dir=dirname(__FILE__);//查找当前脚本所在路径
	require $dir."/db.php";//引入mysql操作类文件
	require $dir."./PHPExcel.php";//引入PHPExcel
	$db=new db($phpexcel);//实例化db类 连接数据库
	$objPHPExcel=new PHPExcel();//实例化PHPExcel类, 等同于在桌面上新建一个excel
	for($i=1;$i<=3;$i++){
		if($i>1){
			$objPHPExcel->createSheet();//创建新的内置表
		}
		$objPHPExcel->setActiveSheetIndex($i-1);//把新创建的sheet设定为当前活动sheet
		$objSheet=$objPHPExcel->getActiveSheet();//获取当前活动sheet
		$objSheet->setTitle($i."年级");//给当前活动sheet起个名称
		$data=$db->getDataByGrade($i);//查询每个年级的学生数据
		$objSheet->setCellValue("A1","姓名")->setCellValue("B1","分数")->setCellValue("C1","班级");//填充数据
		$j=2;
		foreach($data as $key=>$val){
				$objSheet->setCellValue("A".$j,$val[‘username‘])->setCellValue("B".$j,$val[‘score‘])->setCellValue("C".$j,$val[‘class‘]."班");
				$j++;
		}
	}
	$objWriter=PHPExcel_IOFactory::createWriter($objPHPExcel,‘Excel5‘);//生成excel文件
	//$objWriter->save($dir."/export_1.xls");//保存文件
	browser_export(‘Excel5‘,‘browser_excel03.xls‘);//输出到浏览器
	$objWriter->save("php://output");

	function browser_export($type,$filename){
		if($type=="Excel5"){
				header(‘Content-Type: application/vnd.ms-excel‘);//告诉浏览器将要输出excel03文件
		}else{
				header(‘Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet‘);//告诉浏览器数据excel07文件
		}
		header(‘Content-Disposition: attachment;filename="‘.$filename.‘"‘);//告诉浏览器将输出文件的名称
		header(‘Cache-Control: max-age=0‘);//禁止缓存
	}

?>

  

时间: 2024-12-16 20:01:57

数据库导入Exel,输入到浏览器的相关文章

项目部署文档--数据库导入,tomcat配置

常用操作 查看mysql编码格式:show variables like 'character%'; 编码格式的修改:需要在MySQL安装目录下对my.ini文件修改utf8 导入数据库sql:mysql -u root -p123456 test <d:\a.sql  具体看下面 Tomcat在其他位置配置工作目录 ①在webapps目录外任何你需要的地方(如E盘根目录)新建自己的程序目录myjsp. ②将webapps->root目录下的WEB-INF连同其下的文件一起拷至myjsp下.

功能齐全、效率一流的免费开源数据库导入导出工具(c#开发,支持SQL server、SQLite、ACCESS三种数据库),每月借此处理数据5G以上

软件名:DataPie 功能:支持SQL server.SQLite.ACCESS数据库的导入.导出.存储过程调用,支持EXCEL2007.EXCEL2003.ACCESS2007. CSV文件导入数据库,支持EXCEL.CSV.ZIP.ACCESS文件方式导出,支持数据拆分导出及自定义SQL查询与导出. 开发背景:作者从事财务管理工作,主要是出具集团的内部财务报表,随着公司精细化管理的需求,管理报表的数据量急速增长, 依赖EXCEL加工处理数据已经变得极为困难,因此团队全面转向关系数据库进行数

linux系统上Mysql数据库导入导出操作

需求:把MySQL数据库目录中的dz数据库备份到/home/dz_bak.sql ,然后再新建一个数据库dzbak,最后把/home/dz_bak.sql 导入到数据库dzbak中.操作如下:以下操作均在终端命令行下进行 1.mysqldump -u root -p dz > /home/dz_bak.sql        #导出数据库     123456     #输入数据库密码     扩展:     mysqldump -u root -p dz pre_portal_comment >

Oracle11g数据库导入Oracle10g数据库

EXPDP USERID='scott/[email protected] as sysdba' schemas=scott directory=DATA_PUMP_DIR dumpfile=dp.dmp logfile=dp.log version=10.2.0.1.0 create tablespace houqin_tablespace datafile 'D:\dzj\orcl\TEST01111.DBF' size 100M autoextend on next 5M maxsize

oracle数据库导入导出09192255

1.导入数据库(dmp) Linux系统中: 1. 用root账号登录服务器,然后切换到oracle账号(安装oracle数据库的时候用的用的账号) 2. 切换到oralce的安装目录下的bin下 3. 输入: ./sqlplus /nolog 4. 输入: conn iflytek/iflytek as sysdba 5. 创建表空间: create tablespace MOBILESERVER datafile '/opt/oracle/app/oradata/orcl/MOBILESER

Oracle数据库导入imp命令导入时1659错误处理

今天在自己的电脑上在给数据库导入表结构及数据时报1659错误,错误如下: IMP-00017:由于oracle错误1659,以下语句失败: “create table “T_TELETE” .......... IMP_00003: 遇到 ORACLE 错误 1659ORA-01659: 无法分配超出 6 的 MINEXTENTS (在表空间 HWITS_1中) 经大量查找......发现 从公司导出的dmp文件初始化分配表空间的值过大造成的!!! 那么,就要修改自己本地的表空间大小了. 修改表

数据库导入Excel-从基础做起

最近一直跟着师傅做考试系统的基础,每天与大量的数据打交道,数据的导入.数据的导出.视图的导入导出.核对信息等等,收获挺多的,培养了自己的耐心和细心,也进一步了解了数据库. 一切从基础做起! 来看看最近我在干什么吧.除了给学生授课,修改学生信息等等以外,也和数据库打了打交道.数据量很大,5000多条数据,一条一条写进去是不可能的,那么就直接导入Excel吧.(导出数据类似) 首先,我们需要整理好我们的Excel表,设计好数据库的表,让字段和Excel表的的每一列对应起来.接下来接可以进行数据导入了

Oracle数据库——常用命令(用户管理、数据库导入导出)

--==cmd控制台==-- --==日常用户管理SQL==-- --连接到SQLPLUS >sqlplus /nolog --以dba身份连接 sql>conn / as sysdba --修改用户密码 将system用户的密码修改成system sql>alter user system identified by "system" --连接 sql>conn 请输入用户名:system 输入口令: --查询所有用户 sql>select * from

MYSQL 数据库导入导出命令

MySQL命令行导出数据库 1,进入MySQL目录下的bin文件夹:cd MySQL中到bin文件夹的目录 如我输入的命令行:cd C:\Program Files\MySQL\MySQL Server 4.1\bin (或者直接将windows的环境变量path中添加该目录) 2,导出数据库:mysqldump -u 用户名 -p 数据库名 > 导出的文件名 如我输入的命令行:mysqldump -u root -p news > news.sql   (输入后会让你输入进入MySQL的密码