加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

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

发布时间:2020-12-13 21:29:43 所属栏目:PHP教程 来源:网络整理
导读:摘要:[PHP、MySQL] 数据进入数据库后要导出 前几天,在做数据库导出(MySQL to xls)的设计时,遇到一个很严重的问题。 就是数据导出到Excel档的时候,如果数据库内的字段内容有text的型态并且存入的数据有断行的话,在Excel导出时也会出现断行。 也就是会断到

摘要:[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!

参考看看啰~


原文:大专栏 ?[PHP、MySQL] 数据进入数据库后要导出

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读