php 导出mysql_[PHP、MySQL] 数据进入数据库后要导出

2ff34e647e2e3cdfd8dca593e17d9b0a.png

摘要:[PHP、MySQL] 数据进入数据库后要导出

前几天,在做数据库导出(MySQL to xls)的设计时,遇到一个很严重的问题。

就是数据导出到Excel档的时候,如果数据库内的字段内容有text的型态并且存入的数据有断行的话,在Excel导出时也会出现断行。

也就是会断到下一列,为了解决这个问题,仔细的研究了一下我做文件输入时干了些什么东西...$chapterRange= addslashes($_POST['chapterRange']);

$testRange = addslashes($_POST['testRange']);

$numberofPeople = addslashes($_POST['numberofPeople']);

$environment = addslashes($_POST['environment']);

$homeBook = addslashes($_POST['homeBook']);

发现在数据进入数据库前我做了addslashes,但想想...这跟输入有什么关系?他只是加了个反斜线在一些特殊符前而已,所以我把方向转到导出的问题。

因为很清楚会断行要嘛就是n在作怪,要嘛就是

在做怪,所以就先朝个n的方向做处理。

于是我在输出端加入了取代n的函数:$chapterRange = str_replace("n","",$row[chapterRange]);

$testRange = str_replace("n","",$row[testRange]);

$numberofPeople = str_replace("n","",$row[numberofPeople]);

$environment = str_replace("n","",$row[environment]);

$homeBook = str_replace("n","",$row[homeBook]);

接着输出...糟糕,导出的Excel档还是一样断行,怎么办..

想了想,加入一个函数做处里看看:$chapterRange = mysql_real_escape_string($chapterRange);

$testRange = mysql_real_escape_string($testRange);

$numberofPeople = mysql_real_escape_string($numberofPeople);

$environment = mysql_real_escape_string($environment);

$homeBook = mysql_real_escape_string($homeBook);

mysql_real_escape_string这个函数主要就是将SQL里的特殊符做显示,加入后,很漂亮的输出...虽然在导出的Excel档里有一堆r的断行符,但后来测试做导入,很OK!

参考看看啰~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值