跟着我来肢解Discuz! 解剖Discuz! 分析Discuz! 研究Discuz! 实习主刀:Cos.X

[原创]分享一点经验

上一篇 / 下一篇  2007-08-23 08:50:07

一、PHP几个容易混淆的系统常量

1
$_SERVER['SCRIPT_FILENAME']
__FILE__

区别: a.php 中输入代码
<?php
echo $_SERVER['SCRIPT_FILENAME'];
echo '<br>'
echo __FILE__;
?>
b.php中include('a.php');

执行 b.php 就会发现他们的区别了
D:\www\hpc\b.php
D:\www\hpc\a.php

2.我也还没搞清的
$_SERVER['HTTP_HOST'] www.mayday.net.cn
$_SERVER['SERVER_NAME'] www.mayday.net.cn

$_SERVER['SCRIPT_NAME'] /hpc/c.php
$_SERVER['PHP_SELF'] /hpc/c.php

 

二、包含的困惑
a.php 输出asdasd
b.php 包含a.php
admin/c.php 包含b.php

b.php包含a.php有两种方式
include('a.php');
include('./a.php');
第二种会出错

三、
admin/b.php中包含a.php
a.php 输入<?php
session_save_path('admin');
session_start();
?>
执行b.php提示出错
改成'./admin'还是提示出错

二三总结,本地路径最好用绝对路径

四、上传文件的bug?
创建一个PHP文件,输入代码
<pre><?php
print_r($_FILES);
?></pre>
<form. method="post" enctype="multipart/form-data">
 <input type="file" name="file" />
 <input type="submit" value="提交" />
</form>
执行上传一个文件名带单引号的文件,比如 Cos.X'sBlog.txt
上传之后获取到的文件名只剩 'sBlog.txt'

五、为什么要指定 session_save_path
因为如果同一域名下,同样的程序有两份,
用SESSION做登录,那么登录其中一个,
不指定 session_save_path 的话,另一个也会成登录状态


TAG:

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

Open Toolbar