电子商务网站导入Excel数据的设计与实现

[摘 要] 本文在分析Excel XML表格文件格式的基础上,论述了利用XML、PHP技术将Excel工作表数据导入到网站数据库的实现方法,并给出实例.

[关 键 词 ] Excel 电子商务网站 PHP

一、引言

在互联网络高速发展的今天,众多企业纷纷建立了各自的电子商务网站.本文论述了利用PHP、XML技术在网站中导入Excel数据的实现方法.

二、相关技术简介

1.XML技术.XML是Web上的数据表示和交换的标准,允许Inter的应用程序之间交换数据,并将数据的格式和内容与处理方法分离开来.XML具有良好的数据存储格式、开放性、可扩展性、自描述性、高度的结构化、便于网络传输等特性.

2.Exce l2003的XML支持.微软的Office 2003增加了XML的支持功能.在Excel 2003中通过添加XML架构定义(XSD文件)到工作簿,提高本机 XML 的支持.可以在 Excel 电子表格和 XML架构之间创建一个映像,轻松地导入从其他数据库和应用程序中创建的XML数据,将XML元素从XML架构中映像到Excel工作表的单元格,也可将Excel工作表数据导出为XML数据,用于与其他数据库和应用程序的交互.

3.PHP和MySQL数据库.PHP是当前流行的开发网站应用程序的一种Web服务器脚本语言,PHP提供的DOM解析器可以处理XML文档.DOM解析器一次性地将整个XML文档读到内存,并且DOM解析器为XML文档的每个元素创建一个树型结构,在内存中保存其树型结构.MySQL是一个免费的SQL数据库服务器软件,广泛应用于网站的后台数据库.PHP和MySQL的组合是构建商务网站的一种解决方案.

三、Excel数据导入到网站的数据库的实现

下面以网上书店管理系统为例,介绍如何将Excel文件中的图书信息导入到网站数据库的实现过程.这里以MySQL作为网站的后台数据库.

1.将Excel工作表另存为Excel XML表格文档.在Excel 2003中可以将工作表另存为XML表格文档.Excel XML表格文档实际上是文本文件,它直接根据Excel工作表的数据类型,将工作表保存为XML文档,可以在Excel中打开XML表格文档并且象标准Excel电子表格一样进行编辑.上述图书信息的Excel工作表另存为XML表格文档后,其XML部分内容如下:

<Workbook>

<Worksheet ss:Name等于“Sheet1”>

<Table ss:ExpandedColumnCount等于”3”ss:ExpandedRowCount等于”150”>

... <Row>

<Cell><Data ss:Type等于“String”>电子商务概论</Data></Cell>

<Cell><Data ss:Type等于“String”>北京大学出版社</Data></Cell>

<Cell><Data ss:Type等于“Number”>23.6</Data></Cell>

</Row>... </Table> ... </Worksheet>

</Workbook>

分析上面的部分XML内容格式,得到XML表格文档的根元素是<Workbook>,代表一个工作簿.在<Workbook>根元素下,<Worksheet>子元素定义当前工作簿里的工作表,其ss:Name属性指定工作表名称,在一个有效的XML表格文档里,至少需要该元素的一个实例.每个<Worksheet>元素包含一个<Table>元素,定义一个工作表的属性和内容,其中ss:ExpandedColumnCount属性指定工作表的总列数,ss:ExpandedRowCount属性指定工作表的总行数.<Table>元素的子元素是<Row>,每个<Row>元素包含一个或者多个<Cell>元素,而<Cell>元素又包含<Data>元素,指定单元格的值.因此工作表中每行数据由一个<Row>元素来定义,每个单元格由<Cell>元素定义.


2.设计Excel XML表格文档导入到网站数据库的程序.对于另存的Excel XML表格文档,通过访问网站提供的表单页面和程序,利用HTTP协议,将它上传到网站,由Web服务器端的PHP脚本程序对上传的XML文档进行解析,读取其每个<Row>元素的数据,作为一个新记录插入到MySQL数据库.导入Excel XML表格文档的程序设计如下:

(1)创建Excel XML表格的XML文档对象.PHP的全局数组$_FILES存放了有关上传文件的信息.假设上传表单的文件域名为file,$_FILES['file']['tmp_name']数组元素就存放了上传的临时文件名.下面代码根据上传的XML文档,创建一个文档对象.$dom 等于 DOMDocument::load($_FILES['file']['tmp_name']),

(2)读取XML文档的指定元素.利用文档对象的getElementsByTagName方法获取XML文档中指定的所有子元素.下面代码返回XML文档中所有<Row>元素及其子孙元素组成的对象集合.$rows 等于$dom->getElementsByTagName('Row'),根据上述设计思想,下面的PHP程序功能是读取上传的Excel XML表格文档,外循环读取每个<Row>元素对应的对象,内循环读取一个<Row>元素对象中的每个<Cell>子元素对象,由$cell->nodeValue属性得到<Cell>元素的值,即其中<Data>元素的内容.根据读取的一行数据内容构建一条INSERT命令,将新记录插入到MySQL数据库.

<php

if ( $_FILES['file']['tmp_name'] ) {

$dom 等于 DOMDocument::load( $_FILES['file']['tmp_name'] ),

$rows 等于 $dom->getElementsByTagName( 'Row' ),

foreach ($rows as $row) {

$cells 等于 $row->getElementsByTagName('Cell'),

$vals等于“”,

foreach( $cells as $cell )

$vals等于$vals.“'”.$cell->nodeValue.“'”,

$vals等于LEFT($vals,STRLEN($vals)-1),

$sql等于“insert into BookStore(booktitle, publishor, price) values(“. $vals. “),”,

mysql_query($sql,$conn),

} } }

四、结束语

本文介绍的Excel数据导入程序是针对某一种格式的Excel工作表的.利用这种Excel数据导入方法,实现原始数据到网站数据库的自动导入,避免了大量数据重新输入的问题,提高了管理人员的工作效率,可应用于商务网站管理平台.

类似论文

电子商务网站聊天室系统的设计与实现

摘 要:随着Inter的发展和迅速普及,电子商务不断发展 为促进这种模式发展,对电子商务网站聊天室系统进行了开发 首先阐述了系。
更新日期:2024-11-2 浏览量:20975 点赞量:6310

电子商务网站导入Excel数据的设计与实现

[摘 要]本文在分析ExcelXML表格文件格式的基础上,论述了利用XML、PHP技术将Excel工作表数据导入到网站数据库的实现方。
更新日期:2024-12-3 浏览量:22649 点赞量:6744

电子商务网站规划设计

摘 要:随着近年来互联网的高速发展,传统企业的实体店经营模式逐渐向网络的商务。
更新日期:2024-3-15 浏览量:43367 点赞量:10095

小型电子商务网站规划设计

摘 要:小型电子商务网站作为电子商务活动开展的基础平台,也是电子商务活动开展以及推。
更新日期:2024-9-9 浏览量:17578 点赞量:5084

电子商务网站的设计

运用Dreamweer、ASP NET和Access数据库技术,开发一套电子商务购物平台网站,实现商品信息的发布浏览、会员注册登录、商品订单购买、商。
更新日期:2024-2-20 浏览量:31327 点赞量:7542

电子商务网站设计的实用原则

[摘 要]电子商务作为现代社会的一种重要的商业运营手段,已经普及到生活的各个角落 而作。
更新日期:2024-8-4 浏览量:15973 点赞量:4832