本帖最后由 foolant 于 2010-01-30 13:04 编辑
先给测试效果: 582782089 是我的QQ号,而且已经填到个人资料里了(我的是注册时需要验证QQ号码才能注册的),修改以后可以用 http://qiku.tk/582782089 直接访问我的个人空间首页(你的站需要开放游客浏览才能让人家可以看到),同时显示的个人网址也是 http://qiku.tk/582782089 ,但是用原来的 http://qiku.tk/space-1.html 和 http://qiku.tk/space.php?uid=1 也可以访问.
效果图如下
别问我这样做有什么实际的好处,我只是告诉你可以这样玩而已.至于你需要不需要我就不知道了.
代码修改: space.php (uchome根目录), space_index.htm (template/你的当前模板目录,没有的话改template/default里的) 别笑,确实很多人不知道要先在自己模板里面找htm文件来改的,别人告诉他改default里面的,他用了模板,模板目录里恰好有同名的文件,结果改来改去弄不出效果来.
1. space.php 在- //是否公开
- if(empty($isinvite) && empty($_SCONFIG['networkpublic'])) {
- checklogin();//需要登录
- }
复制代码 后面添加- //用QQ号做网址开始[by foolant]
- $qq = empty($_GET['qq'])?0:intval($_GET['qq']);
- if(!$qq && $uid) {
- $query = $_SGLOBAL['db']->query("SELECT * FROM ".tname('spacefield')." WHERE uid='$uid'");
- if($value = $_SGLOBAL['db']->fetch_array($query)) {
- $qq = intval($value[qq]);
- }else{
- $query = $_SGLOBAL['db']->query("SELECT * FROM ".tname('spacefield')." WHERE qq='$uid'");
- if($value = $_SGLOBAL['db']->fetch_array($query)) {
- $qq = intval($value[qq]);
- }
- }
- if($qq) {
- $uid = $_GET[uid] = $value[uid];
- }
- } elseif($qq) {
- $query = $_SGLOBAL['db']->query("SELECT * FROM ".tname('spacefield')." WHERE qq='$qq'");
- if($value = $_SGLOBAL['db']->fetch_array($query)) {
- //QQ号存在
- if(!$uid){
- $uid = $_GET[uid] = $value[uid];
- }
- } else {
- unset($qq);
- unset($_GET[qq]);
- }
- }
- //用QQ号做网址结束
复制代码 2. index_space.htm 查找"主页地址"可以找到这一行- <li>主页地址:<a href="$space[domainurl]" onclick="javascript:setCopy('$space[domainurl]');return false;" class="spacelink domainurl">$space[domainurl]</a></li>
复制代码 在这一行的前面(注意是前面,前后要搞清)添加如下代码:- <!--{eval
- if($qq){
- if($space['domain'] && $_SCONFIG['allowdomain'] && $_SCONFIG['domainroot']) {
- $space['domainurl'] = 'http://'.$space['domain'].'.'.$_SCONFIG['domainroot'];
- } else {
- if($_SCONFIG['allowrewrite']) {
- $space['domainurl'] = getsiteurl().$qq;
- } else {
- $space['domainurl'] = getsiteurl()."?$qq";
- }
- }
- }
- }-->
复制代码 有个小小的 bug ,当你的会员超过10000以后,用 qq 和 uid 可能会冲突, 当然如果你有那么多会员,我相信你的空间肯定是支持rewrite的了,这样的话最简单的办法就是修改 .htaccess 里面的RewriteRule ^([0-9]+)$ space.php?uid=$1 [L] 为RewriteRule ^([0-9]+)$ space.php?qq=$1 [L] 反正我是这样干的.
好了,完工了,清空缓存.欢迎加入非主流一族....
|