本帖最后由 ilearn 于 2012-03-18 00:06:46 编辑

解决方案 »

  1.   

    1.当然是允许嵌套的,你的代码有语法问题(if条件的括号是不能省略的)
    <?php
    if ($a > $b) {
        $c = $_post['abc'];
        if ($c < 3) {
            $d = 4;
        }
    }
    ?>2.使用session机制进行控制,仔细阅读手册中session相关的章节。
    http://cn2.php.net/manual/zh/book.session.php3.建议使用require_once()进行引用。
    http://cn2.php.net/manual/zh/function.require-once.php4.一般不需要手动释放,因为PHP页面执行结束后会自动释放所有占用的资源,除非你的页面非常复杂,执行过程有需要花费很长的时间。
      

  2.   

    1:允许嵌套2:请去看看session的用法。检查session即可。3:其实都行。如果担心重复包含。则用require_once()/include_once()4:如果你的连接不是永久连接。通常不需要关闭。因为php会在脚本结束时自动关闭。
      

  3.   

    用户验证可以使用 session,也可只用 cookie$dbh = new PDO('mssql:host=192.168.x.x;dbname=abcd',$username,$pwd);
    不需要释放,程序结束时会自动释放
    如果要释放,则 $dbh = null;
      

  4.   

    其他都差不多答案 这个补充一下2)写了一些其他页面,怎样保证一定要登录以后才能访问,没登录不能访问呢?登录后才能访问,那就要判断帐号是否是授权的,可以通过全局的SESSION 或者COOKIE 来传递进行判断,
    这些内容通过php来输出 例如include 一些加密过的数据 或者echo 一整个html代码,具体看你需要提供给用户的内容多少来处理吧例如if (isset($_SESSION['islogin'])){
    //输出内容
    }else{
    //非法查看
    }SESSION是安全的,因为存储在服务器端.当然混合COOKIE一起使用也是常见的用法.觉得有必要的话还可以加个时间戳啥的判断下是否超出时间..
      

  5.   

    1:一般都不建议多重嵌套(不论是循环还是一般的if`else)判断,需要多重嵌套时看能否用其他的简化;如:switch
    4:数据库连接,可以建立单件模式,保证只有一个数据库连接对象