iptton 发表于 2008-3-23 00:02:44

关于FaceBook_clone

下了facebook_clone..
测试未成功,主要是注册部分总出现 out of range ...school_year 估计是数据库编码问题
后台可以顺利添加用户(后台添加用户不涉及school_year这个字段)

运行不是最终目的,还是学习代码有用些
在这里逐步把阅读过程中的收获与疑惑与大家讨论下:

1,不知是否因为是破解文件的原因,文件头有一大幅的注释,这是俗称的“ansi”艺术吧?
 这个不重要,重要的是每个PHP文件后面都有一个换行,目前我所看到的所有控制器文件都有一句

session_start();
如果你在index.php里error_reporting(E_ALL),肯定可以看到 cannot send header..这样的错误信息。
2,所有控制器都有这样的一个函数:

            function Intro()
                {
                        parent::Controller();
                }//end method
    这个不是应该由控制器本身同名的函数来做的吗?事实上没有与本身同名的函数,也没有__contruct()函数。找了很久没找到原因,在函数体里加echo发现没有echo出来,注释掉这个函数,控制器还是能正常工作。难道这个函数是多余的?或者这个针对php4(我用的是php5)?百思不得其解。。。

3,大部分控制器都有这样一个函数:
    load_setting 或者 loadSetting 函数风格不一就不说了..
  比较不解的是这两个函数在很多文件中是一模一样的,这不大符合 DRY(don't repeat yourself) 吧?

4,只有一个Model:common
  以下函数属于Model?
    function validMonthDay($month,$day)
      {
            //echo $month;
            $valid    = true;
            if(strtoupper($month)=='02' and $day>28)
                $valid=false;
            if(strtoupper($month)=='04' and $day>30)
                $valid=false;
            if(strtoupper($month)=='06' and $day>30)
                $valid=false;
            if(strtoupper($month)=='09' and $day>30)
                $valid=false;
            if(strtoupper($month)=='11' and $day>30)
                $valid=false;
            return $valid;
      }//end validMonthDay()

以下代码在Model文件common.php里不少见:
            $rsvpContent    =    '<form name="rsvp_form" id="rsvp_form"><table>
                                    <tr><td bgcolor="#6699CC">Your RSVP</td></tr>
                                    <tr><td>'.$rsvpTitle.'</td></tr>
                                    <tr><td><input type="radio" name="'.$rsvpId.'" id="'.$rsvpId.'" value="attending" '.$attCheck.'>Attending</td></tr>
                                    <tr><td><input type="radio" name="'.$rsvpId.'" id="'.$rsvpId.'" value="notattending" '.$notAttCheck.'>Not Attending</td></tr>
                                    <tr><td><input type="radio" name="'.$rsvpId.'" id="'.$rsvpId.'" value="maybeattending" '.$mayAttCheck.'>Maybe Attending</td></tr>
                                    <tr><td align="center">
                                        <input type="button" value="RSVP" >
                                        </td>
                                    </tr>
                              </table></form>';

//这到底是程序员还是美工呀...
   //sets the banckground of messae, due to read or unread messages
   if($rs->message_status=='read')
       $style ='style="background-color:#CCCCCC;"';
   else
      $style ='style="background-color:#999999;"';


[ 本帖最后由 iptton 于 2008-3-23 01:09 编辑 ]

Hex 发表于 2008-3-23 00:08:02

我没有特别仔细的看过这个东西。

我感觉也许他对 CI 源代码进行了某些扩展和修改?

iptton 发表于 2008-3-23 00:10:32

嗯,有些怀疑是...

iptton 发表于 2008-3-23 00:20:26

1795-5=1790行一个函数,
全是

if($_POST['action']=='xxxx'){

}elseif($_POST['action']=='xxxx'){

}elseif($_POST['action']=='xxxx'){

}


:funk: :funk:
ajax控制器...这个函数是否太长了点。。。

[ 本帖最后由 iptton 于 2008-3-23 00:21 编辑 ]

Hex 发表于 2008-3-23 00:30:35

呵呵,每个人用 CI 的方式看来都不一样~~~

xhq6632 发表于 2008-3-26 05:02:11

分享一下,我的facebook调试成功,只有部分地方字符编码没有正确

shinelake 发表于 2009-4-21 10:53:22

4# iptton

貌似是一个dispatch

jejwe 发表于 2009-4-21 12:56:18

本帖最后由 jejwe 于 2009-4-21 13:44 编辑

下载的数据脚本 好像不全啊
页: [1]
查看完整版本: 关于FaceBook_clone