📄 global.php
字号:
<?
/*
* ===========================================
小月(网名)
QQ:117115
email:xyh@51hl.com
http://xyh.28k.net
本程序免费,你可以做出相应修改,但请保留小月字样,及连接,本程序作者冰雨盟QQ:199117
* ===========================================
*/
session_save_path("tmp");
session_name('s');
session_start();
require_once("config.php");
$readno=0;
$writeno=0;
$idpath='';
$time_start = getmicrotime();
$browseinfo=browseinfo();
$osinfo=osinfo();
if (empty($page)) $page=1;
if ($page <1) $page=1;
$ip=getenv('REMOTE_ADDR');
$ip1 = getenv('HTTP_X_FORWARDED_FOR');
if (($ip1 != "") && ($ip1 != "unknown")) $ip=$ip1;
$timestamp = time();
$cookietime = $timestamp+3153600;
if($refresh_allowed) {
if ($REQUEST_URI == $HTTP_COOKIE_VARS['lastpath'] && ($timestamp-$HTTP_COOKIE_VARS['lastvisit_fr']<$refresh_allowed)) {
die('本次显示禁止,原因:访问同一URL的刷新时间小于'.$refresh_allowed.'秒');
}
setCookie('lastpath', $REQUEST_URI, $cookietime);
setCookie('lastvisit_fr', $timestamp, $cookietime);
}
add_online();
function getmicrotime(){
list($usec, $sec) = explode(" ",microtime());
return ((float)$usec + (float)$sec);
}
function getTemplate($template,$EXT="htm") {
global $readno,$style;
if(empty($style)) $style='bym';
$readno++;
$a=str_replace("\"","\\\"",implode("",file("style/".$style."/".$template.".".$EXT)));
return $a;
}
function readfromfile($file_name) {
global $readno;
$readno++;
$filenum=@fopen($file_name,"r");
@flock($filenum,LOCK_SH);
$file_data=@fread($filenum,filesize($file_name));
@fclose($filenum);
return $file_data;
}
function writetofile($file_name,$data,$method="w") {
global $writeno;
$writeno++;
$filenum=@fopen($file_name,$method);
@flock($filenum,LOCK_EX);
$file_data=@fwrite($filenum,$data);
@fclose($filenum);
return $file_data;
}
function add_online() {
global $timestamp,$ip,$online_limit,$picid,$picpath,$browseinfo,$osinfo;
$onlinefile="{$picpath}online.php";
$a=0;
if (file_exists($onlinefile)) {
$online_user=trim(readfromfile($onlinefile));
$online_user=explode("\n",$online_user);
$new_online_user='';
$online_user_count=count($online_user);
for($i=0; $i<$online_user_count; $i++) {
$online_user_detail=explode("|",$online_user[$i]);
if ($timestamp-$online_user_detail[1]<=$online_limit
&& $online_user_detail[2]!=$ip)
{$a++;
$new_online_user.=$online_user[$i]."\n";}
}
$new_online_user.="<?die();|$timestamp|$ip|$picid|$browseinfo|$osinfo|";
$a++;
} else $new_online_user="<?die();|$timestamp|$ip|$picid|$browseinfo|$osinfo|";
$online_max=trim(readfromfile("{$picpath}online_max.php"));
$online_max_detail=explode("|",$online_max);
if($online_max_detail[0]<=$a) {$online_max_detail[0]=$a;$online_max_detail[1]=$timestamp;
$online_max=implode("|",$online_max_detail);
writetofile("{$picpath}online_max.php",$online_max);}
writetofile($onlinefile,$new_online_user);
}
function safe_convert($d) {
$d = str_replace("\t","",$d);
$d = str_replace("<","<",$d);
$d = str_replace(">",">",$d);
$d = str_replace("\r","<br>",$d);
$d = str_replace("\n","",$d);
$d = str_replace("|","│",$d);
$d = str_replace(" "," ",$d);
return $d;
}
function getruntime($time_start){
global $readno,$writeno,$picpath;
$online_user=trim(readfromfile("{$picpath}online.php"));
$online_user=explode("\n",$online_user);
$online_user_count=count($online_user);
$online_max=trim(readfromfile("{$picpath}online_max.php"));
$online_max_detail=explode("|",$online_max);
$time_end = getmicrotime();
$time = $time_end - $time_start;
$totaltime = number_format($time, 5);
$foot="<center>小月图片1.0版,小月QQ:117115 Power by <a href=admin.php>冰雨盟</a>,Runtime: ".$totaltime."s Read: {$readno},Write: {$writeno},<font color=red>当前在线{$online_user_count}人</font>峰值在线{$online_max_detail[0]}人[".getfulldate($online_max_detail[1])."]</center>";
return $foot;
}
function browseinfo() {
$browser="";$browserver="";
$Browsers =array("Lynx","MOSAIC","AOL","Opera","JAVA","MacWeb","WebExplorer","OmniWeb");
$Agent = $GLOBALS["HTTP_USER_AGENT"];
for ($i=0; $i<=7; $i++) {
if (strpos($Agent,$Browsers[$i])) {
$browser = $Browsers[$i];
$browserver ="";
}
}
if (ereg("Mozilla",$Agent) && !ereg("MSIE",$Agent)) {
$temp =explode("(", $Agent); $Part=$temp[0];
$temp =explode("/", $Part); $browserver=$temp[1];
$temp =explode(" ",$browserver); $browserver=$temp[0];
$browserver =preg_replace("/([\d\.]+)/","\\1",$browserver);
$browserver = " $browserver";
$browser = "Netscape Navigator";
}
if (ereg("Mozilla",$Agent) && ereg("Opera",$Agent)) {
$temp =explode("(", $Agent); $Part=$temp[1];
$temp =explode(")", $Part); $browserver=$temp[1];
$temp =explode(" ",$browserver);$browserver=$temp[2];
$browserver =preg_replace("/([\d\.]+)/","\\1",$browserver);
$browserver = " $browserver";
$browser = "Opera";
}
if (ereg("Mozilla",$Agent) && ereg("MSIE",$Agent)) {
$temp = explode("(", $Agent); $Part=$temp[1];
$temp = explode(";",$Part); $Part=$temp[1];
$temp = explode(" ",$Part);$browserver=$temp[2];
$browserver =preg_replace("/([\d\.]+)/","\\1",$browserver);
$browserver = " $browserver";
$browser = "微软探索者(IE)";
}
if ($browser!="") {
$browseinfo = "$browser$browserver";
}
else {
$browseinfo = "未知的浏览器";
}
return $browseinfo;
}
function osinfo() {
$os="";
$Agent = $GLOBALS["HTTP_USER_AGENT"];
if (eregi('win',$Agent) && strpos($Agent, '95')) {
$os="Windows 95";
}
elseif (eregi('win 9x',$Agent) && strpos($Agent, '4.90')) {
$os="Windows ME";
}
elseif (eregi('win',$Agent) && ereg('98',$Agent)) {
$os="Windows 98";
}
elseif (eregi('win',$Agent) && eregi('nt 5',$Agent)&& strpos($Agent, '5.1')) {
$os="Windows XP";
}
elseif (eregi('win',$Agent) && eregi('nt 5',$Agent)) {
$os="Windows 2000";
}
elseif (eregi('win',$Agent) && eregi('nt',$Agent)) {
$os="Windows NT";
}
elseif (eregi('win',$Agent) && ereg('32',$Agent)) {
$os="Windows 32";
}
elseif (eregi('linux',$Agent)) {
$os="Linux";
}
elseif (eregi('unix',$Agent)) {
$os="Unix";
}
elseif (eregi('sun',$Agent) && eregi('os',$Agent)) {
$os="SunOS";
}
elseif (eregi('ibm',$Agent) && eregi('os',$Agent)) {
$os="IBM OS/2";
}
elseif (eregi('Mac',$Agent) && eregi('PC',$Agent)) {
$os="Macintosh";
}
elseif (eregi('PowerPC',$Agent)) {
$os="PowerPC";
}
elseif (eregi('AIX',$Agent)) {
$os="AIX";
}
elseif (eregi('HPUX',$Agent)) {
$os="HPUX";
}
elseif (eregi('NetBSD',$Agent)) {
$os="NetBSD";
}
elseif (eregi('BSD',$Agent)) {
$os="BSD";
}
elseif (ereg('OSF1',$Agent)) {
$os="OSF1";
}
elseif (ereg('IRIX',$Agent)) {
$os="IRIX";
}
elseif (eregi('FreeBSD',$Agent)) {
$os="FreeBSD";
}
if ($os=='') $os = "Unknown";
return $os;
}
function get_date_chi($datetime){
$t=getdate($datetime);
$year=$t['year'];
$mon=$t['mon'];
$mday=$t['mday'];
return "{$year}年{$mon}月{$mday}日 ";
}
function getfulldate($datetime){
$t=getdate($datetime);
$hour=$t['hours'];
$min=$t['minutes'];
if (strlen($min)==1) $min="0".$min;
$year=$t['year'];
$mon=$t['mon'];
$mday=$t['mday'];
return "{$year}年{$mon}月{$mday}日{$hour}:{$min}";
}
function get_time($datetime){
$t=getdate($datetime);
$hour=$t['hours'];
$min=$t['minutes'];
if (strlen($min)==1) $min="0".$min;
return "{$hour}:{$min}";
}
function get_date($datetime){
$t=getdate($datetime);
$year=$t['year'];
$mon=$t['mon'];
$mday=$t['mday'];
return "{$year}-{$mon}-{$mday}";
}
function getbl($a='1')
{
global $readno,$picpath,$picid;
$picture_list_=@file("{$picpath}list.php");
$count=count($picture_list_);
$picselect='';
for ($ii=0; $ii<$count; $ii++) {
$pictureid_=explode("|",$picture_list_[$ii]);
if($a=='1'){
if($pictureid_[1]==$picid) $picselect.="<option value=\"$pictureid_[1]\" selected>$pictureid_[2] </option>";
else $picselect.="<option value=\"$pictureid_[1]\">$pictureid_[2]</option>";
}else{
if($pictureid_[1]==$picid) $picselect.="<option value=\"display.php?picid=$pictureid_[1]\" selected>--$pictureid_[2] </option>";
else $picselect.="<option value=\"display.php?picid=$pictureid_[1]\">--$pictureid_[2]</option>";
}
}
return $picselect;
}
function gethot()
{
global $readno,$picpath,$picid,$hot_view_no;
$picture_list_=@file("{$picpath}viewhot.php");
$count=count($picture_list_);
$picselect='';
for ($ii=0; $ii<min($count,$hot_view_no); $ii++) {
$pictureid_=explode("|",$picture_list_[$ii]);
$picselect.="<a href=\"readpic.php?picid=$pictureid_[9]&filename=$pictureid_[1]\" target=\"_blank\">$pictureid_[2]</a>($pictureid_[7]):: $pictureid_[5]<br>";
}
return $picselect;
}
function get_next_filename($list,$id) {
$list=explode("\n",$list,11);
$count=min(count($list),11);
$filecount=0;
for ($i=0; $i<$count; $i++) {
$temp=explode("|",$list[$i]);
list($nouse,$thiscount)=explode("_",$temp[1]);
if ($thiscount>$filecount) $filecount=$thiscount;
}
$filecount++;
while (file_exists("forum$id/f_$filecount")) $filecount++;
return("f_$filecount");
}
function push_heldtopics($list) {
$list=explode("\n",$list,12);
$count=count($list);
for ($i=0; $i<$count-1; $i++) {
$detail = explode("|",$list[$i]);
if ($detail[2] > 2) {
$held_topics[]=$list[$i];
unset($list[$i]);
}
}
if ($held_topics) $list= implode("\n",$held_topics)."\n".implode("\n",$list);
else $list=implode("\n",$list);
return $list;
}
function autourl($messagetext)
{
global $urlSearchArray, $urlReplaceArray, $emailSearchArray, $emailReplaceArray;
$urlSearchArray = array(
"/([^]_a-z0-9-=\"'\/])((https?|ftp|gopher|news|telnet|mms):\/\/|www\.)([^ \r\n\(\)\*\^\$!`\"'\|\[\]\{\};<>]*)/si",
"/^((https?|ftp|gopher|news|telnet|mms):\/\/|www\.)([^ \r\n\(\)\*\^\$!`\"'\|\[\]\{\};<>]*)/si"
);
$urlReplaceArray = array(
"\\1[url]\\2\\4[/url]",
"[url]\\1\\3[/url]" );
$emailSearchArray = array(
"/([ \n\r\t])([\\._a-zA-Z0-9-]+(\.[\\._a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*(\.[a-zA-Z]{2,3}))/si",
"/^([\\._a-zA-Z0-9-]+(\.[\\._a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*(\.[a-zA-Z]{2,3}))/si" ); $emailReplaceArray = array(
"\\1[email]\\2[/email]",
"[email]\\0[/email]");
$text = preg_replace($urlSearchArray, $urlReplaceArray, $messagetext);
if (strpos($text, "@")) {
$text = preg_replace($emailSearchArray, $emailReplaceArray, $text);
}
return $text;
}
$viewhot=gethot();
$search_fl=getbl();
function banned($c=1) {
global $YOUR_obj,$picpath,$picid,$ip,$readno,$viewhot,$search_fl,$PHP_SELF,$filename,$act,$yourpwd,$userpwd;
$check=1;
$cd=0;
if($YOUR_obj==2){
if (!file_exists("{$picpath}pic{$picid}/your_ip.php")) return;
$term_members = file("{$picpath}pic{$picid}/your_ip.php");$readno++;
if (empty($term_members)) return;
$count = count($term_members);
for ($i=1; $i<$count; $i++) {
$bannedip = trim($term_members[$i]);
if (!$bannedip) continue;
if ( strpos($ip , $bannedip)===0 ) $check=2;
}
if ($check==1) {
if($c==1){
$body="<center><br>本分类,已设定限入<br><br><A href=\"javascript:history.back(-1)\">返回</A></center>";
$main_=getTemplate("main");
eval ("\$index= \"".$main_."\";");
$index_=getruntime($time_start);
echo "$index.$index_";
exit;
}else{
$cd=1;
}
}
}
elseif($YOUR_obj==3){
if (empty($userpwd)) $userpwd=$HTTP_SESSION_VARS['userpwd'];
if(file_exists("{$picpath}pic{$picid}/your_pwd.php")) require_once("{$picpath}pic{$picid}/your_pwd.php");
if($act=='binyum') {
if(md5($userpwd) == $yourpwd) {
session_register("userpwd");}
}
elseif($act=='bymout'){
session_destroy();
header("Location:$PHP_SELF?picid=$picid&filename=$filename");
exit;
}
if(md5($userpwd) != $yourpwd){
if($c==1){
session_destroy();
$body="<center><br>本分类,已设定限入<br><br>
<FORM action=$PHP_SELF?picid=$picid&filename=$filename method=post>
<P>密 码:<INPUT type=password name=userpwd></P>
<P><INPUT type=submit value=登录></P><INPUT type=hidden value=binyum name=act></FORM><br><br><A href=\"javascript:history.back(-1)\">返回</A></center>";
$main_=getTemplate("main");
eval ("\$index= \"".$main_."\";");
$index_=getruntime($time_start);
echo "$index.$index_";
exit;}
else{$cd=1;}
};
}
if($c !=1 ) return $cd;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -