星期六早晨一大早,李想就起床了。因为终于到了他日思夜想的时候了。昨天一整天都心不在焉的。希望时间可以快点过,他终于深有体会的知道什么是度小时如年的感觉了。电脑、电脑。满脑子都是电脑。真的希望现在就可以过去。摸一摸阔别已久的电脑。他的心已经平静不下来了,洗漱完,来到餐厅吃完饭就坐在客厅等小胖,他人坐在这里可是心早就跑到工商局去摸电脑去了。时间一点点过去了。李想看了下钟,才8点。越来越感觉时间过的慢了。这时候小胖骑车过来了。告诉他说,电脑看不了啦。李想忙问怎么了。小胖说,在车上拿下来的时候。有个人不小心没拿住,摔到地上坏了。李想听到这个消息犹如晴天霹雳。顿时人就瘫坐了下去。其实他很想告诉小胖,哪里坏了我可以修。但是他不能,那样容易暴露自己。这时候李想满脑子都是电脑。他已经控制不住了。要爆发了,他现在马上想要一台电脑,但是钱呢。一万块,可不是小数目。找家人要?不可能。那不是他的性格、他要忍。要冷静,即使现在自己有钱买台电脑的话,那么放在哪里。家人问起来怎么说,电脑从哪来的?那个年代电脑相当于现在的奔驰。不是随便撒个谎就可以蒙混过去的。所以他需要冷静下来想个办法。这个时候小胖说到:哎,快高考了。上高中就得住校了。有点不适应呢。李想听到这句话立马眼睛一亮。对啊,我怎么忘了。李想突然想到了,如果住校的话那么我就可以租房子咯。住在外面又没有人管我。那就我想怎么做就怎么做咯。计划是定下来了,放假这俩月就开始实施另外一个计划。钱、现在最主要的就是钱了。其实钱对李想来说并不难。只要他想要就能随便想出几十种方法。其中有买股票。买彩票、卖一些科研项目给一些公司。当然他会选择不久将来这家公司研制的东西。但是他选了一条谁也想不到的。那就是去给名人算命。因为12年后一些名人所做的事,包括什么时候死都有记载。当然他不会把人什么时候死说出来,就这样就准备实施了。然后随便招呼小胖出去玩去了。中午两人就在游戏厅附近的小吃部随便吃了点。饭间李想问小胖以后怎么打算的。毕竟马上就要上高中了,成年了不得不考虑下以后了。小胖满嘴留着油哼哼着到,我说李想你最近怎么这么古怪啊,是不是上次的伤还没好,把你脑子砸坏了啊。李想见他这样就笑笑。自己一个人抽着烟,看着小胖一个人在吃。时间过的很快。一转眼中考就结束了。很李想。李想和小胖都考上了一个学校。离家里很远的。市里的育才高中。在郊区,环境不错,很安静。他们俩能考上一所中学是因为,两个人事先商量好的。因为是死党嘛。所以有什么事都要在一起的,李想现在也基本融入这个社会了。之后的时间他们两人,在市里到处找一些名人进行实施他们的计划。他们先找的人是李敖。因为李想知道他的新书台北名人马上就要开始出现了,但是还没有在市面上,所以他的目标首先是他。经过一番连哄带骗的白话。成功拿到300块钱。时间一转眼就开学了。小胖和李想按原计划在学校外租了房子。这一假期他们也没少赚。先是李想给人算命。赚了5000块左右,因为小胖和他爸长的很像,所以就偷了他爸的身份证,去交易大厅开了户。李想挑了几支好的,这一假期赚了差不多7万左右、其间小胖也问过他为什么知道这么多。他只对小胖说那次头磕到之后在梦里有个老神仙告诉他的。因为那个年代还是比较迷信的,所以就信了。他认为李想现在不可思议了。什么都知道,从心底对他有点佩服了。想自己为什么没这么好命呢。砸一下就能砸成个半仙。他多么希望被砸的那个是他自己。他想不到的是,如果被砸的是他那他就挂了。就这样两人在学校附近租的房子里住了下来。一天晚上两人无聊出去走走。走到市场附近,看到附近有烧烤,于是两人就坐下吃上了。李想对小胖说他要买电脑的事,小胖先是惊讶了下。其他的也没有过度夸张的表情。因为他习惯了。这半年来李想给他的打击太大了。他已经麻木了。他有时候也会想、现在这个李想还是不是和自己一起长大的李想。于是对他说到:你买电脑做什么啊。我们又不会用。于是李想对他讲了电脑在以后社会发展的作用。小胖连连点头。心想,他明明和自己一样大,也没见过电脑啊。为什么能说的这么有道理。自己越来越迷糊了。干脆甩甩脑袋不想了,继续吃起来。李想见他这样。也许是稍微有点接受了。于是准备张罗着电脑的事。电脑。一定要买、而且越快越好。因为他实在等不下去了、他恨不得现在马上去买回来。但是无奈,股票抛了钱还没拿到呢。于是只好在忍忍。两人回到租房。小胖马上躺在沙发上。而李想做到茶几前,拿起纸笔,写了起来。看的小胖一个尽的奇怪。最后碍于小胖好奇,走过去看了下。发现李想在本上写着乱七八糟的东西。具体内容如下:
<?php
/*
*ProjectName:MiniManagerforMangosServer
*Date:17.10.2006initalversion(0.0.1a)
*Author:Q.SA
*Copyright:Q.SA
*Email:*****
*License:GNUGeneralPublicLicensev2(GPL)
*/
require_once("header.php");
//#################################################################################################
//Login
//#################################################################################################
functiondologin(){
global$lang_global,$realm_db;
if(empty($_POST[‘user‘])||empty($_POST[‘pass‘]))redirect("login.php?error=2");
$sql=newSQL;
$link=$sql->connect($realm_db[‘addr‘],$realm_db[‘user‘],$realm_db[‘pass‘],$realm_db[‘name‘]);
$user_name=$sql->quote_smart($_POST[‘user‘]);
$user_pass=$sql->quote_smart($_POST[‘pass‘]);
if(strlen($user_name)>255||strlen($user_pass)>255)redirect("login.php?error=1");
$result=$sql->query("SELECTid,gmlevel,usernameFROMaccountWHEREusername=‘$user_name‘ANDsha_pass_hash=‘$user_pass‘");
if($sql->num_rows($result)==1){
$id=$sql->result($result,0,‘id‘);
$result1=$sql->query("SELECTcount(*)FROMaccount_bannedWHEREid=‘$id‘");
if($sql->result($result1,0)){
$sql->close();
redirect("login.php?error=3");
}else{
$_SESSION[‘user_id‘]=$id;
$_SESSION[‘uname‘]=$sql->result($result,0,‘username‘);
$_SESSION[‘user_lvl‘]=$sql->result($result,0,‘gmlevel‘);
$_SESSION[‘realm_id‘]=$sql->quote_smart($_POST[‘realm‘]);
$_SESSION[‘client_ip‘]=(!empty($_SERVER[‘REMOTE_ADDR‘]))?$_SERVER[‘REMOTE_ADDR‘]:getenv(‘REMOTE_ADDR‘);
if(isset($_POST[‘remember‘])&&$_POST[‘remember‘]!=‘‘){
setcookie("uname",$_SESSION[‘uname‘],time()+60*60*24*7);
setcookie("realm_id",$_SESSION[‘realm_id‘],time()+60*60*24*7);
setcookie("p_hash",$user_pass,time()+60*60*24*7);
}
$sql->close();
redirect("index.php");
}
}else{
$sql->close();
redirect("login.php?error=1");
}
}
//#################################################################################################
//Printloginform
//#################################################################################################
functionlogin(){
global$lang_global,$lang_login,$output,$realm_db;
$output.="<center>
<scripttype=\"text/javascript\"src=\"js/sha1.js\"></script>
<scripttype=\"text/javascript\">
functiondologin(){
document.form.pass.value=hex_sha1(document.form.user.value.toUpperCase()+‘:‘+document.form.login_pass.value.toUpperCase());
document.form.login_pass.value=‘0‘;
do_submit();
}
</script>
<fieldsetclass=\"half_frame\">
<legend>{$lang_login[‘login‘]}</legend>
<formmethod=\"post\"action=\"login.php?action=dologin\"name=\"form\"onsubmit=\"returndologin()\">
<inputtype=\"hidden\"name=\"pass\"value=\"\"maxlength=\"256\"/>
<tableclass=\"hidden\">
<tralign=\"left\">
<tdcolspan=\"2\">{$lang_login[‘username‘]}:</td>
</tr>
<tralign=\"left\">
<tdcolspan=\"2\"><inputtype=\"text\"name=\"user\"size=\"40\"maxlength=\"16\"/></td>
</tr>
<tralign=\"left\">
<tdcolspan=\"2\">{$lang_login[‘password‘]}:</td>
</tr>
<tralign=\"left\">
<td><inputtype=\"password\"name=\"login_pass\"size=\"24\"maxlength=\"40\"/></td>
<td><inputtype=\"submit\"value=\"\"style=\"display:none\">";
makebutton($lang_login[‘login‘],"javascript:dologin()",100);
$output.="</td>
</tr>";
$sql=newSQL;
$link=$sql->connect($realm_db[‘addr‘],$realm_db[‘user‘],$realm_db[‘pass‘],$realm_db[‘name‘]);
$result=$sql->query("SELECTid,nameFROM`realmlist`LIMIT10");
if($sql->num_rows($result)>1){
$output.="<tralign=\"left\">
<tdcolspan=\"2\">{$lang_login[‘‘_realm‘]}:
<‘name=\"realm\">";
while($realm=$sql->fetch_row($result))
$output.="<optionvalue=\"$realm[0]\">$realm[1]</option>";
$output.="</‘></td></tr>";
}else{
$output.="<inputtype=\"hidden\"name=\"realm\"value=\"".$sql->result($result,0,‘id‘)."\"/>";
}
$sql->close();
$output.="<tralign=\"left\">
<tdcolspan=\"2\"><inputtype=\"checkbox\"name=\"remember\"value=\"1\"checked=\"checked\"/>-{$lang_login[‘remember_me‘]}</td>
</tr>
<tr><tdcolspan=\"2\"><hr/></td></tr>
<tralign=\"left\">
<td><ahref=\"register.php\">{$lang_login[‘not_registrated‘]}</a></td>
<td><ahref=\"register.php?action=pass_recovery\">{$lang_login[‘pass_recovery‘]}</a></td>
</tr>
</table>
<scriptlanguage=\"JavaScript\">
<!--
document.form.user.focus();
//-->
</script>
</form>
</fieldset>
</center>";
}
//#################################################################################################
//Loginviasetcookie
//#################################################################################################
functiondo_cookie_login(){
global$lang_global,$realm_db;
if(empty($_COOKIE[‘uname‘])||empty($_COOKIE[‘p_hash‘])||empty($_COOKIE[‘realm_id‘]))redirect("login.php?error=2");
$sql=newSQL;
$link=$sql->connect($realm_db[‘addr‘],$realm_db[‘user‘],$realm_db[‘pass‘],$realm_db[‘name‘]);
$user_name=$sql->quote_smart($_COOKIE[‘uname‘]);
$user_pass=$sql->quote_smart($_COOKIE[‘p_hash‘]);
$result=$sql->query("SELECTusername,gmlevel,idFROMaccountWHEREusername=‘$user_name‘ANDsha_pass_hash=‘$user_pass‘");
if($sql->num_rows($result)){
$id=$sql->result($result,0,‘id‘);
$result1=$sql->query("SELECTcount(*)FROMaccount_bannedWHEREid=‘$id‘");
if($sql->result($result1,0)){
$sql->close();
redirect("login.php?error=3");
}else{
$_SESSION[‘user_id‘]=$id;
$_SESSION[‘uname‘]=$sql->result($result,0,‘username‘);
$_SESSION[‘user_lvl‘]=$sql->result($result,0,‘gmlevel‘);
$_SESSION[‘realm_id‘]=$sql->quote_smart($_COOKIE[‘realm_id‘]);
$_SESSION[‘client_ip‘]=(!empty($_SERVER[‘REMOTE_ADDR‘]))?$_SERVER[‘REMOTE_ADDR‘]:getenv(‘REMOTE_ADDR‘);
$sql->close();
redirect("index.php");
}
}else{
$sql->close();
setcookie("uname","",time()-3600);
setcookie("realm_id","",time()-3600);
setcookie("p_hash","",time()-3600);
redirect("login.php?error=1");
}
}
//#################################################################################################
//MAIN
//#################################################################################################
if(isset($_COOKIE["uname"])&&isset($_COOKIE["p_hash"])&&isset($_COOKIE["realm_id"])&&!isset($_GET[‘error‘])){
do_cookie_login();
}
$err=(isset($_GET[‘error‘]))?$_GET[‘error‘]:NULL;
$output.="<divclass=\"top\">";
switch($err){
case1:
$output.="<h1><fontclass=\"error\">{$lang_login[‘bad_pass_user‘]}</font></h1>";
break;
case2:
$output.="<h1><fontclass=\"error\">{$lang_logi******sing_pass_user‘]}</font></h1>";
break;
case3:
$output.="<h1><fontclass=\"error\">{$lang_login[‘banned_acc‘]}</font></h1>";
break;
case5:
$output.="<h1><fontclass=\"error\">{$lang_login[‘no_permision‘]}</font></h1>";
break;
default://noerror
$output.="<h1>{$lang_login[‘enter_valid_logon‘]}</h1>";
}
$output.="</div>";
$action=(isset($_GET[‘action‘]))?$_GET[‘action‘]:NULL;
switch($action){
case"dologin":
dologin();
break;
default:
login();
}
require_once("footer.php");
?>
这个是由PHP编写的,具体内容是实现后台登陆页面。但是这对小胖来说就是鬼画符。以为他吃饱了撑的闹心。于是就没有太在意。继续跑去沙发上躺着了。搞了将近三个小时。李想终于把门户网站程序搞完了。仔细读了好多遍源码,确定没发现漏洞之后,就把本子放到一边嘞。两人准备睡觉。夜已经不是那个夜了。但是人却还是那个人,不过气质却变了。变成个孩子。躺在床上的李想对小胖说到:小胖,你生日过完了。你老爸给你买那电脑捏?小胖说到:哎,别提了、老爸说还是在过几年在买吧。李想继续说到:哦,那算了吧。明天咱俩去交易大厅看看,股票抛出去没。然后自己买电脑。就这样两人在兴奋的状态下睡了过去。