将excel的数据导入到数据库
时间:2008-11-08
来源:互联网
这个是用的C# ,改成php的就好了
作者: 0hudu 发布时间: 2008-11-08
我也要啊,Php的
作者: ted 发布时间: 2008-11-10
刚好最近学着写学生课外分系统,有这个功能,其实只用到上传文件move_uploaded_file()函数,file( )函数,还有explode()函数,不会太难,因为我也是初学,所以程序不太规范,基本上可以实现吧,文件我已经上传了,有兴趣的可以下载来看看
主要是这些:
[php]
if($_POST['addstu']=='csv')
{
if(substr($_FILES['stucsv']['name'],-4)=='.csv')
{
$uploaddir='./upload/';
$uploadfile=$uploaddir.date("Y-m-d-H-i-s").$_FILES['stucsv']['name'];
if(move_uploaded_file($_FILES['stucsv']['tmp_name'],$uploadfile))
$buffer=file("$uploadfile");
foreach($buffer as $value)
{ $stu=explode(',',$value);
}//这样就可以把CSV里一行的资料都放到stu数组了,这样循环ECHO到一个表单里给用户察看是不是全对,如果全对,再提交数据库,如果不用用户确认,那循环时直接连接数据库插入就更简单了
}
else
echo '上传的不是EXCEL的CSV数据文件,请重新上传正确的文件!';//
}
else if($_POST['csvaddstu']=='确定添加')
{
include('config.php');
$stuname=$_POST['name'];
$stuclass=$_POST['class'];
$stunum=$_POST['num'];
$stutel=$_POST['tel'];
mysql_select_db($db_name,$conn);
for($nstu=0;$nstu<count($stuname);$nstu++)
{
$addstusql="insert into stu (stunum,stuname,stuclass,stutel) values ('$stunum[$nstu]','$stuname[$nstu]','$stuclass[$nstu]','$stutel[$nstu]')";
mysql_query('set character set GBK');
$addsturesult=mysql_query($addstusql); //这里是插入数据了
if($addsturesult)
echo '成功添加: '.$stuname[$nstu].'<br>';
else echo '<font color="red">添加 '.$stuname[$nstu].' 失败!</font><br>';
}
}
[/php]
下面是效果,第一次用PHP写东西,写得不好,见笑了,呵呵:
[php]
[/php]
主要是这些:
[php]
if($_POST['addstu']=='csv')
{
if(substr($_FILES['stucsv']['name'],-4)=='.csv')
{
$uploaddir='./upload/';
$uploadfile=$uploaddir.date("Y-m-d-H-i-s").$_FILES['stucsv']['name'];
if(move_uploaded_file($_FILES['stucsv']['tmp_name'],$uploadfile))
$buffer=file("$uploadfile");
foreach($buffer as $value)
{ $stu=explode(',',$value);
}//这样就可以把CSV里一行的资料都放到stu数组了,这样循环ECHO到一个表单里给用户察看是不是全对,如果全对,再提交数据库,如果不用用户确认,那循环时直接连接数据库插入就更简单了
}
else
echo '上传的不是EXCEL的CSV数据文件,请重新上传正确的文件!';//
}
else if($_POST['csvaddstu']=='确定添加')
{
include('config.php');
$stuname=$_POST['name'];
$stuclass=$_POST['class'];
$stunum=$_POST['num'];
$stutel=$_POST['tel'];
mysql_select_db($db_name,$conn);
for($nstu=0;$nstu<count($stuname);$nstu++)
{
$addstusql="insert into stu (stunum,stuname,stuclass,stutel) values ('$stunum[$nstu]','$stuname[$nstu]','$stuclass[$nstu]','$stutel[$nstu]')";
mysql_query('set character set GBK');
$addsturesult=mysql_query($addstusql); //这里是插入数据了
if($addsturesult)
echo '成功添加: '.$stuname[$nstu].'<br>';
else echo '<font color="red">添加 '.$stuname[$nstu].' 失败!</font><br>';
}
}
[/php]
下面是效果,第一次用PHP写东西,写得不好,见笑了,呵呵:
[php]
学号 | 姓名 | 所在班级 | 联系电话 |
<INPUT id=num[] value="" name=num[]> | <INPUT id=name[] value="" name=name[]> | <INPUT id=class[] value="" name=class[]> | <INPUT id=tel[] value="" name=tel[]> |
|

addstu.inc.rar (1.7 KB)
作者: comy 发布时间: 2008-11-10
如果不用上传,只导入,那这里就可以了:
$buffer=file("文件路径");
foreach($buffer as $value)
{ $stu=explode(' , ',$value);
这里加插入到数据库的语句,
}
$buffer=file("文件路径");
foreach($buffer as $value)
{ $stu=explode(' , ',$value);
这里加插入到数据库的语句,
}
作者: wsh 发布时间: 2008-11-15
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28