仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 946|回复: 19
打印 上一主题 下一主题

[学习教程] PHP网页设计从 MySQL 导入导出大批数据的法式完成方...

[复制链接]
只想知道 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-4 00:18:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
你的留言本应该加入注册以及分页功能了,而如果你更强的话,UI(用户界面)也可以加强,完成之后,感觉是不是特有成就感?不管怎么样,咱好歹是写了一个动态网站程序了,放在自己的网站上耍耍吧。mysql|法式|数据   人人必定利用过 phpmyadmin 外面的数据库导入,导出功效,十分便利。然而在实践使用中,我发明以下几个成绩:

1 数据库超越必定尺寸,好比6M 这时候利用导出普通没成绩,可以准确的保留到本机硬盘下面,然而导入则不可!缘由是:普通的 PHP.INI 外面设置一时文件/上传文件的巨细限制为2M,而phpmyadmin利用了上传的体例,形成掉败。

2 导出到硬盘的 .SQL 文件在导回时,常常呈现因为某些单引号的成绩引发掉败,形成导入掉败,只能用 mysql等使用法式导入了。

我的数据库已超越10M,所以必需处理这个成绩。我的思绪:

导出: 用phpmyadmin 保留数据库/表格布局,用剧本读取数据库内容并保留到文件外面!
导入: 用phpmyadmin 恢单数据库/表格布局,用剧本读取文件,然后保留到库外面!

导出法式以下:挪用办法为 ****.php?table=tablename
这个复杂的法式今朝一次保留一个表格!!每行动一个字段的数据!!

<?
if($table=="")exit();
mysql_connect("localhost","name","password");
mysql_select_db("database");
$result = mysql_query("select * from $table");
if(mysql_num_rows($result) <= 0) exit();
echo "入手下手转换数据到文本...
";
$handle = fopen("$table.txt","w");
$numfields = mysql_num_fields($result);
fputs($handle,$numfields."rn");
for($k=0;$k<mysql_num_rows($result);$k++)
{
$msg = mysql_fetch_row($result);
for($i=0;$i<$numfields;$i++)
{
$msg[$i] = str_replace("rn"," ",$msg[$i]);
$msg[$i] = str_replace("n" ," ",$msg[$i]);
fputs($handle,$msg[$i]."rn");
}
fputs($handle,"------- php2000 dump data program V1.0 for MySQL --------rn");
}
fclose($handle);
echo "ok";
?>

导入的法式以下:用法同下面!

<?
if($table=="")exit();
mysql_connect("localhost","name","password");
mysql_select_db("database");
$message = file("$table.txt");
echo $numfields = chop($message[0]);
for($k=1;$k<count($message);$k+=($numfields+1))
{
$value="";
for ($i=$k;$i<($k+$numfields-1);$i++)
{
$tmp = str_replace(" ","rn",chop($message[$i]));
$value .= "'".addslashes($tmp)."',";
}
$tmp = str_replace(" ","rn",chop($message[$k+$numfields-1]));
$value .= "'".$tmp."'";
$query = "insert into $table values (".$value.")";
echo mysql_error();
mysql_query($query);
echo $k." ";
}
echo "ok";
?>

利用办法和能够的成绩!
1 导入时 file()函数能够会有成绩(我的10M的数据没呈现成绩),可以改成 fopen()然后没次读一行!!
2 导入,导出都需求用 ftp 操作,也就是导出后,用 ftp 把数据转到本机,导入时先用ftp转移数据到办事器!
   PHP的理解是新手最难迈过的一道门槛,不过你应该感到幸运的是PHP已经最大极限的为了新手而努力了,如果你学过其他的语言,也许会觉得PHP的确相当的简单,但是如果你之前什么都没学过,那么阿弥陀佛,硬着头皮琢磨吧。
第二个灵魂 该用户已被删除
沙发
发表于 2015-2-4 11:14:16 | 只看该作者
有时候汉字的空格也能导致页面出错,所以在写代码的时候,要输入空格最好用引文模式。
谁可相欹 该用户已被删除
板凳
发表于 2015-2-6 21:04:32 | 只看该作者
环境搭建好,当你看见你的浏览器输出“it works\\\\\\\"时你一定是喜悦的。在你解决问题的时候,我强烈建议多读php手册。
分手快乐 该用户已被删除
地板
发表于 2015-2-7 20:00:22 | 只看该作者
做为1门年轻的语言,php一直很努力。
乐观 该用户已被删除
5#
发表于 2015-2-9 04:41:53 | 只看该作者
爱上php,他也会爱上你。
只想知道 该用户已被删除
6#
 楼主| 发表于 2015-2-26 22:48:56 | 只看该作者
Apache不是非得用80或者8080端口的,我刚开始安得时候就是80端口老占用,就用了个 81端口,结果照常,就是输localhost的时候,应该输入为 localhost:81
精灵巫婆 该用户已被删除
7#
发表于 2015-3-3 23:37:26 | 只看该作者
如果你可以写完像留言板这样的程序,那么你可以去一些别人的代码了,
柔情似水 该用户已被删除
8#
发表于 2015-3-5 09:46:32 | 只看该作者
不禁又想起那些说php是草根语言的人,为什么认得差距这么大呢。
再见西城 该用户已被删除
9#
发表于 2015-3-7 09:08:52 | 只看该作者
本人接触php时间不长,算是phper中的小菜鸟一只吧。由于刚开始学的时候没有名师指,碰过不少疙瘩,呗很多小问题卡过很久,白白浪费不少宝贵的时间,在次分享一些子的学习的心得。
飘灵儿 该用户已被删除
10#
发表于 2015-3-10 22:16:12 | 只看该作者
首先我是坚决反对新手上来就用框架的,因为对底层的东西一点都不了解,造成知识上的真空,会对以后的发展不利。我的观点上手了解下框架就好,代码还是手写。当然啦如果是位别的编程语言的高手的话,这个就另当别论啦。
再现理想 该用户已被删除
11#
发表于 2015-3-11 17:14:23 | 只看该作者
实践是检验自己会不会的真理。
小妖女 该用户已被删除
12#
发表于 2015-3-19 02:59:05 | 只看该作者
首推的搜索引擎当然是Google大神,其次我比较喜欢 百度知道。不过搜出来的结果往往都是 大家copy来copy去的,运气的的概率很大。
13#
发表于 2015-3-25 06:07:26 | 只看该作者
微软最近出的新字体“微软雅黑”,虽然是挺漂亮的,不过firefox  支持的不是很好,所以能少用还是少用的好。
简单生活 该用户已被删除
14#
发表于 2015-4-1 16:33:58 | 只看该作者
首先声明:我是一个菜鸟,是一个初学者。学习了一段php后总是感觉自己没有提高,无奈。经过反思我认为我学习过程中存在很多问题,我改变了学习方法后自我感觉有了明显的进步。
爱飞 该用户已被删除
15#
发表于 2015-4-1 20:11:22 | 只看该作者
实践是检验自己会不会的真理。
兰色精灵 该用户已被删除
16#
发表于 2015-4-3 03:25:55 | 只看该作者
基础有没有对学习php没有太大区别,关键是兴趣。
莫相离 该用户已被删除
17#
发表于 2015-4-4 03:51:01 | 只看该作者
首先我是坚决反对新手上来就用框架的,因为对底层的东西一点都不了解,造成知识上的真空,会对以后的发展不利。我的观点上手了解下框架就好,代码还是手写。当然啦如果是位别的编程语言的高手的话,这个就另当别论啦。
变相怪杰 该用户已被删除
18#
发表于 2015-4-13 17:57:11 | 只看该作者
兴趣是最好的老师,百度是最好的词典。
蒙在股里 该用户已被删除
19#
发表于 2015-4-16 09:10:49 | 只看该作者
微软最近出的新字体“微软雅黑”,虽然是挺漂亮的,不过firefox  支持的不是很好,所以能少用还是少用的好。
若相依 该用户已被删除
20#
发表于 2015-4-16 15:09:21 | 只看该作者
这些中手常用的知识,当你把我说的这些关键字都可以熟练运用的时候,你可以选择自己
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-22 17:31

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表