仓酷云

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

[学习教程] PHP编程:用PHP完成静态发生XML文件和从XML文件...

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

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

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

x
我的文章不会对您的学习起到实质性的作用,您能否成功,还得靠自己的,坚持,坚持,再坚持,就是步入成功的不二法门。dom|xml|法式|静态|数据   这个东东弄了我一天。。。可是到最初发明却没法完成本人想像中的那种后果。。。真是惋惜。。。看来PHP对XML还需求增强。。。假如哪位对此有研讨。接待来信切磋。。。

起首建表:
CREATE TABLE books (
   bookid int(4) NOT NULL auto_increment,
   bookname varchar(100) NOT NULL,
   bookauth varchar(50) NOT NULL,
   bookpublisher varchar(50) NOT NULL,
   bookpubdate datetime NOT NULL,
   bookurl varchar(50) NOT NULL,
   KEY bookid (bookid),
);

然后。。。这段是从MYSQL里取数据转化成XML的源代码:
<?
$connect_id=mysql_connect("localhost","root","");
mysql_select_db("bbs",$connect_id);
$query="select * from books order by bookid";
$rs=mysql_query($query,$connect_id);
$numfields=mysql_num_fields($rs);
$xmlfile="<?xml version=\"1.0\" encoding=\"GB2312\"?>\n";
$xmlfile.="<books>\n";

while($row=mysql_fetch_array($rs)){
    for($i=0;$i<$numfields;$i++){
        $fieldname=mysql_field_name($rs,$i);
        $xmlfile.="<" . $fieldname . ">" . $row[$i] . "</" . $fieldname . ">\n";
    }
}
mysql_free_result($rs);
mysql_close($connect_id);
$xmlfile.="</books>\n";
$fp=fopen("xmldoc/xmldoc.xml","w");
if(fwrite($fp,$xmlfile)){
    echo "写入文件胜利!";
}
else{
    echo "写入文件掉败!";
}
?>

这段是从XML里取数据转化成HTML的源代码。。。
<?
class xml{
    var $parser;

    function xml(){
        $this->parser = xml_parser_create();
        xml_set_object($this->parser,&$this);
        xml_set_element_handler($this->parser,"tag_on","tag_off");
        xml_set_character_data_handler($this->parser,"cdata");
    }
   
    function parse($data){
        xml_parse($this->parser,$data);
    }
   
    function tag_on($parser,$tag,$attributes){
        if(xml_get_current_line_number($parser)==2){
            echo "<tr><td colspan=\"2\" align=\"center\">" . $tag . "</td>";
        }
        else{
            switch ((xml_get_current_line_number($parser)-2)%6){
                case 0:
                    echo "<tr><td>下载<td>";
                    break;
                case 1:
                    echo "<tr><td>ID号<td>";
                    break;
                case 2:
                    echo "<tr><td>书名<td>";
                    break;
                case 3:
                    echo "<tr><td>作者<td>";
                    break;
                case 4:
                    echo "<tr><td>出书社<td>";
                    break;
                case 5:
                    echo "<tr><td>出书日期<td>";
                    break;
            }
        }
    }
   
    function cdata($parser,$cdata){
        echo $cdata;
    }
   
    function tag_off($parser,$tag){
        echo "\n";
    }
}

$xml_parser = new xml();
$xmlfilename="xmldoc/xmldoc.xml";
$fp=fopen($xmlfilename,"r");
$xmldata=fread($fp,filesize($xmlfilename));
?>
<html><head><title>图手札息</title></head>
<body>
<table border="0" cellspacing="1" cellpadding="2" width="80%" bgcolor="#b0d8fF" align="center">
<?
$xml_parser->parse($xmldata);
?>
</table>

其实你们应当看得出。。这个例子是个掉败的东东。。。由于后果不大。。基本不克不及失掉本人想要的东东。。。唉。。。苦。。。。  如果你单纯是为了做网站赚钱,我想你还是别学php的好,去学ASP,JSP好了,毕竟它们有实力雄厚的公司去支持它们。
沙发
发表于 2015-2-16 04:55:02 | 只看该作者
当然这种网站的会员费就几十块钱。
愤怒的大鸟 该用户已被删除
板凳
发表于 2015-2-25 19:48:28 | 只看该作者
真正的方向了,如果将来要去开发团队,你一定要学好smarty ,phplib这样的模板引擎,
小女巫 该用户已被删除
地板
发表于 2015-3-8 01:54:55 | 只看该作者
有时候汉字的空格也能导致页面出错,所以在写代码的时候,要输入空格最好用引文模式。
老尸 该用户已被删除
5#
发表于 2015-3-15 18:37:00 | 只看该作者
先学习php和mysql,还有css(html语言很简单)我认为现在的效果比以前的方法好。
乐观 该用户已被删除
6#
发表于 2015-3-17 20:09:16 | 只看该作者
这些都是最基本最常用功能,我们这些菜鸟在系统学习后,可以先对这些功能深入研究。
简单生活 该用户已被删除
7#
发表于 2015-3-18 22:54:48 | 只看该作者
首推的搜索引擎当然是Google大神,其次我比较喜欢 百度知道。不过搜出来的结果往往都是 大家copy来copy去的,运气的的概率很大。
山那边是海 该用户已被删除
8#
发表于 2015-3-23 11:40:59 | 只看该作者
对于初学者来说不推荐去拿钱买的。当然如果一个网站你经常去用,而且里面的资料也比较有用,最好还是买个会员比较好,毕竟那些也是别人的工作成果。
深爱那片海 该用户已被删除
9#
发表于 2015-3-27 02:10:12 | 只看该作者
建数据库表的时候,int型要输入长度的,其实是个摆设的输入几位都没影响的,只要大于4就行,囧。
admin 该用户已被删除
10#
发表于 2015-4-5 07:41:20 | 只看该作者
Ps:以上纯属原创,如有雷同,纯属巧合
深爱那片海 该用户已被删除
11#
发表于 2015-4-15 11:26:24 | 只看该作者
Ps:以上纯属原创,如有雷同,纯属巧合
蒙在股里 该用户已被删除
12#
发表于 2015-4-18 05:51:16 | 只看该作者
建议加几个专业的phper的群,当然啦需要说话的人多,一处一点问题能有人回答你的,当然啦要让人回答你的问题,平时就得躲在里面聊天,大家混熟啦,愿意回答你问题的人自然就多啦。
爱飞 该用户已被删除
13#
发表于 2015-4-21 03:22:57 | 只看该作者
Apache不是非得用80或者8080端口的,我刚开始安得时候就是80端口老占用,就用了个 81端口,结果照常,就是输localhost的时候,应该输入为 localhost:81
海妖 该用户已被删除
14#
发表于 2015-5-6 07:12:47 | 只看该作者
曾经犯过一个很低级的错误,我在文件命名的时候用了一个横线\\\\\\\'-\\\\\\\' 号,结果找了好几个小时的错误,事实是命名的时候 是不能用横线 \\\\\\\'-\\\\\\\' 的,应该用的是下划线  \\\\\\\'_\\\\\\\' ;
兰色精灵 该用户已被删除
15#
发表于 2015-5-8 11:03:52 | 只看该作者
因为blog这样的可以让你接触更多要学的知识,可以接触用到类,模板,js ,ajax
柔情似水 该用户已被删除
16#
 楼主| 发表于 2015-6-13 00:21:57 | 只看该作者
做为1门年轻的语言,php一直很努力。
小魔女 该用户已被删除
17#
发表于 2015-6-16 21:01:57 | 只看该作者
学习php的目的往往是为了开发动态网站,phper就业的要求也涵盖了很多。我大致总结为:精通php和mysql
变相怪杰 该用户已被删除
18#
发表于 2015-6-18 08:28:28 | 只看该作者
写js我最烦的就是 ie 和 firefox下同样的代码 结果显示的结果千差万别,还是就是最好不要用遨游去调试,因为有时候遨游是禁用js的,有可能代码是争取结果被遨游折腾的认为是代码写错。
不帅 该用户已被删除
19#
发表于 2015-7-4 06:55:45 | 只看该作者
刚开始安装php的时候,我图了个省事,把php的扩展全都打开啦(就是把php.ini 那一片 extension 前面的冒号全去掉啦),这样自然有好处,以后不用再需要什么功能再来打开。
若天明 该用户已被删除
20#
发表于 2015-7-5 01:51:21 | 只看该作者
装在C盘下面可以利用windows的ghost功能可以还原回来(顺便当做是重转啦),当然啦我的编译目录要放在别的盘下,不然自己的劳动成果就悲剧啦。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-12-29 08:33

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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