仓酷云

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

[学习教程] PHP网页设计xzn_html_tree(1.0) 可折叠纲目

[复制链接]
小女巫 该用户已被删除
跳转到指定楼层
#
发表于 2015-2-4 00:23:32 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

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

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

x
学习如何将PHP与HTML结合起来完成简单动态页面   <?
/** 可折叠纲目
* 类名 Tree
* 寄存地位 xzn/html/tree.php
*/

/** 节点类
* 用于在树中保留相干参数
*
* @param $id    节点号
* @param $text  节点题目
* @param $value 节点参数,通常是url
* @param $image 节点图片
*/
class TreeNode {
  var $id;
  var $text;
  var $value;
  var $image;
  function TreeNode($id,$text,$value,$image) {
    $this->id = $id;
    $this->text = $text;
    $this->value = $value;
    $this->image = $image;
  }
}

/** 树类
* 用于保留和输入可折叠纲目
* 可折叠纲目利用FrontPage 2000的JavaScript剧本
*
* 办法
* set()
* 设置节点,节点编号采取1.2.3.4或1-2-3-4的模式。
* 无条理限制。输出次第不限。
* @param $id    节点号
* @param $text  节点题目
* @param $value 节点参数,通常是url
* @param $image 节点图片
*
* display()
* 向页面输入可折叠纲目
*
* 属性
* @public $node 数组,用于保留节点
* @public $jspath 剧本outline.js寄存地位
*/
class Tree {
  var $node;
  var $jspath;
  function set($id,$text,$value="",$image="plus.gif") {
    $d = split("[.-]",$id);
    $e = "";
    for($i=0;$i<count($d);$i++)
      $e .= "[".$d][$i]."]";
    $n = new TreeNode($id,$text,$value,$image);
    eval("\$p=&\$this->node$e;");
    $p[node] = $n;
  }
  function display() {
    echo '<script language="JavaScript" fptype="dynamicoutline">'."\n";
    echo '<!--'."\n";
    echo 'function dynOutline() {}'."\n";
    echo '//-->'."\n";
    echo '</script>'."\n";
    echo '<script language="JavaScript1.2" fptype="dynamicoutline" src="'.$jspath.'outline.js">'."\n";
    echo '</script>'."\n";
    echo '<script language="JavaScript1.2" fptype="dynamicoutline" for="document" event="onreadystatechange()">'."\n";
    echo '<!--'."\n";
    echo 'initOutline()'."\n";
    echo '//-->'."\n";
    echo '</script>'."\n";
    echo '<table dynamicoutline initcollapsed border="0" cellpadding="0" cellspacing="0"  onclick="dynOutline()">'."\n";
    ksort($this->node);
    reset($this->node);
    while(list($key,$value) = each($this->node)) {
      $this->next($value,0);
    }
    echo "</table>\n";
  }
  function next($node,$level) {
    if(! is_array($node))
      return;
    if(isset($node[node])) {
//      echo $level.",".$node[node]->id.",".$node[node]->text.",".$node[node]->value.",".$node[node]->image."\n";
      echo '<tr>'."\n";
      echo '<td valign="baseline" width="42"><img src="'.$node[node]->image.'"></td>'."\n";
      echo '<td valign="top" width="100%">';
      if(empty($node[node]->value))
        echo $node[node]->text."\n";
      else
        echo '<a href="'.$node[node]->value.'">'.$node[node]->text."</a>\n";
      echo '<table border="0" cellpadding="0" cellspacing="0" width="100%">'."\n";
    }
    if(count($node) == 1) {
      echo "</td></tr>\n</table>\n";
      return;
    }
    ksort($node);
    reset($node);
    while(list($key,$value) = each($node)) {
      $this->next($value,$level+1);
    }
    echo "</td></tr>\n</table>\n";
  }
}
?>
  终于学会把表单的数据插入数据库,然后显示出来了,应该说一个程序的雏形已经诞生了。
因胸联盟 该用户已被删除
19#
发表于 2015-9-28 15:20:43 | 只看该作者
当然这种网站的会员费就几十块钱。
飘灵儿 该用户已被删除
18#
发表于 2015-9-22 22:04:18 | 只看该作者
再就是混迹于论坛啦,咱们的phpchina的论坛就很强大,提出的问题一般都是有达人去解答的,以前的帖子也要多看看也能学到不少前辈们的经验。别的不错的论坛例如php100,javaeye也是很不错的。
第二个灵魂 该用户已被删除
17#
发表于 2015-7-22 23:48:57 | 只看该作者
至于模板嘛,各位高人一直以来就是争论不休,我一只小菜鸟就不加入战团啦,咱们新手还是多学点东西的好。
飘飘悠悠 该用户已被删除
16#
发表于 2015-7-21 08:45:42 | 只看该作者
爱上php,他也会爱上你。
若相依 该用户已被删除
15#
发表于 2015-7-18 11:47:32 | 只看该作者
为了以后维护的方便最好是代码上都加上注释,“予人方便,自己方便”。此外开发文档什么的最好都弄齐全。我觉得这是程序员必备的素质。虽然会消耗点很多的时间。但是确实是非常有必要的。
蒙在股里 该用户已被删除
14#
发表于 2015-7-11 19:39:18 | 只看该作者
使用zendstdio 写代码的的时候,把tab 的缩进设置成4个空格是很有必要的
透明 该用户已被删除
13#
发表于 2015-6-15 06:25:38 | 只看该作者
我学习了一段时间后,我发现效果并不好(估计是我自身的问题)。因为一个人的精力总是有限的,同时学习这么多,会导致每个的学习时间都得不到保证。
活着的死人 该用户已被删除
12#
发表于 2015-4-22 01:50:41 | 只看该作者
至于模板嘛,各位高人一直以来就是争论不休,我一只小菜鸟就不加入战团啦,咱们新手还是多学点东西的好。
海妖 该用户已被删除
11#
发表于 2015-4-12 15:28:39 | 只看该作者
最后祝愿,php会给你带来快乐的同时 你也会给他带来快乐。
分手快乐 该用户已被删除
10#
发表于 2015-4-10 19:50:17 | 只看该作者
最后祝愿,php会给你带来快乐的同时 你也会给他带来快乐。
愤怒的大鸟 该用户已被删除
9#
发表于 2015-4-4 08:10:04 | 只看该作者
多看优秀程序员编写的代码,仔细理解他们解决问题的方法,对自身有很大的帮助。
简单生活 该用户已被删除
8#
发表于 2015-3-20 04:31:48 | 只看该作者
有时候汉字的空格也能导致页面出错,所以在写代码的时候,要输入空格最好用引文模式。
小女巫 该用户已被删除
7#
 楼主| 发表于 2015-3-13 04:19:54 | 只看该作者
在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。
admin 该用户已被删除
6#
发表于 2015-3-6 16:54:31 | 只看该作者
首推的搜索引擎当然是Google大神,其次我比较喜欢 百度知道。不过搜出来的结果往往都是 大家copy来copy去的,运气的的概率很大。
变相怪杰 该用户已被删除
5#
发表于 2015-2-20 14:16:20 | 只看该作者
如果你已经到这种程度了,那么你已经可以做我的老师了。其实php也分很多的区域,
莫相离 该用户已被删除
地板
发表于 2015-2-15 09:15:07 | 只看该作者
微软最近出的新字体“微软雅黑”,虽然是挺漂亮的,不过firefox  支持的不是很好,所以能少用还是少用的好。
老尸 该用户已被删除
板凳
发表于 2015-2-9 17:03:59 | 只看该作者
学习php的目的往往是为了开发动态网站,phper就业的要求也涵盖了很多。我大致总结为:精通php和mysql
谁可相欹 该用户已被删除
沙发
发表于 2015-2-6 18:32:30 | 只看该作者
学好程序语言,多些才是王道,写两个小时代码的作用绝对超过看一天书,这个我是深有体会(顺便还能练打字速度)。
精灵巫婆 该用户已被删除
楼主
发表于 2015-2-4 12:54:59 | 只看该作者
写的比较杂,因为我也是个新手,不当至于大家多多指正。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-12-22 20:20

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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