* * * 然后在外部登陆位置,输入下面的代码 * * * * * 在上述的内容中"/home/虚拟主机ID/public_html/ZEROBOARD路径/"表示ZEROBOARD的绝对路径. * * 必须输入上面的 $_zb_url 和 $_zb_path . * * 绝对路径在管理员面板首页最底下. * * 当做的跟上面要求一样时,登陆时出现登陆信息,未登陆时出现登陆表单. * * 修改登陆信息和登陆表单时,修改/outlogin_skin/里的文件即可. * * 已登陆状态 : logged.html * 登陆表单(未登陆状态) : login.html * * 修改上面的2个HTML文件即可实现登陆功能. * * 若在某些HTML文件上要限制登陆级别,则修改$level变量即可. * * 若要看实际使用的文件,请打开outlogin_skin目录里的index.html文件. * * 若要换外部登陆样式,请参考outloing_skin目录里的README.TXT帮助文件. * *******************************************************************************/ global $member, $_head_php_excuted, $REQUEST_URI, $_zb_lib_included, $HTTP_SESSION_VARS, $total_member_connect, $total_guest_connect; global $a_member_join, $a_member_modify, $a_member_memo, $member_memo_icon, $memo_on_sound, $a_logout, $a_login, $id, $PHP_SELF, $_outlogin_include; if(eregi(":\/\/",$_zb_path)||eregi("\.\.",$_zb_path)) $_zb_path ="./"; // 检查outlogin.html文件的include情况 if(!$_outlogin_include) { $_outlogin_include = TRUE; } else { return FALSE; } // 刚开始进行include时,把必要的文件进行include的部分 if(!$_head_php_excuted&&!$_zb_lib_included) { // 检查是不是ZEROBOARD目录 if(!file_exists($_zb_path."lib.html")) { echo "不是ZEROBOARD目录"; return; } // 读_head.html @include $_zb_path."_head.html"; } // 外部登陆输出函数 function print_outlogin($skinname = "default", $group_no = 1, $level = "10") { global $member, $_head_php_excuted, $REQUEST_URI, $HTTP_SESSION_VARS, $total_member_connect, $total_guest_connect, $_zb_path, $_zb_url; global $a_member_join, $a_member_modify, $a_member_memo, $member_memo_icon, $memo_on_sound, $a_logout, $a_login, $id, $PHP_SELF; if($level < $member[level]) { ?> ",$_outlogin_data); $_outlogin_data = str_replace("[login]", "",$_outlogin_data); $_outlogin_data = str_replace("[lost_id]", "",$_outlogin_data); $_outlogin_data = str_replace("[total_member_connect]",number_format($total_member_connect),$_outlogin_data); $_outlogin_data = str_replace("[total_guest_connect]",number_format($total_guest_connect),$_outlogin_data); $_outlogin_data = str_replace("[total_connect]",number_format($total_member_connect+$total_guest_connect),$_outlogin_data); $_outlogin_data = str_replace("[dir]",$_zb_url."outlogin_skin/$skinname/images/",$_outlogin_data); if($group_no) { $_outlogin_data = str_replace("","",$_outlogin_data); } print $_outlogin_script."\n"; print $_outlogin_data."\n"; } else { $f = fopen($_zb_path."outlogin_skin/$skinname/logged.html",r); $_outlogin_data = fread($f, filesize($_zb_path."outlogin_skin/$skinname/logged.html")); fclose($f); $memo_on_img = $_zb_url."outlogin_skin/$skinname/images/i_memo_on.gif"; $memo_off_img = $_zb_url."outlogin_skin/$skinname/images/i_memo_off.gif"; $logout_img = "../images/btn_logout.gif"; $info_img = "../images/btn_paymoney.gif"; $admin_img = "../images/btn_paywin.gif"; $memo_swf = $_zb_url."outlogin_skin/$skinname/images/i_memo.swf"; if($member[new_memo]) { $memo_on_image = " "; $memo_on_sound_out =""; } else { $memo_on_image = " "; } $_outlogin_data = str_replace("[memo]",$memo_on_image,$_outlogin_data); $_outlogin_data = str_replace("[name]",$a_member_memo."".del_html($member[name])."",$_outlogin_data); $_outlogin_data = str_replace("[logout]",$a_logout."",$_outlogin_data); $_outlogin_data = str_replace("[info]",$a_member_modify."",$_outlogin_data); if($member[is_admin]==1||$member[is_admin]==2) $_outlogin_data = str_replace("[admin]","",$_outlogin_data); else $_outlogin_data = str_replace("[admin]","",$_outlogin_data); $_outlogin_data = str_replace("[join_date]",date("Y/m/d",$member[reg_date]),$_outlogin_data); $_outlogin_data = str_replace("[level]",$member[level],$_outlogin_data); $_outlogin_data = str_replace("[point]",number_format($member[point1]*10+$member[point2]),$_outlogin_data); $_outlogin_data = str_replace("[write_num]",number_format($member[point1]),$_outlogin_data); $_outlogin_data = str_replace("[write_comment]",number_format($member[point2]),$_outlogin_data); $_outlogin_data = str_replace("[total_member_connect]",number_format($total_member_connect),$_outlogin_data); $_outlogin_data = str_replace("[total_guest_connect]",number_format($total_guest_connect),$_outlogin_data); $_outlogin_data = str_replace("[total_connect]",number_format($total_member_connect+$total_guest_connect),$_outlogin_data); $_outlogin_data = str_replace("[dir]",$_zb_url."outlogin_skin/$skinname/images/",$_outlogin_data); print $_outlogin_data.$memo_on_sound_out ."\n"; } $a_member_join = ""; return; } $setup = mysql_fetch_array(mysql_query("select use_alllist,use_category from $admin_table where name='$id'")); if($setup[use_alllist]) $target = "list.html?id=".$id; else $target = "show.html?id=".$id; $result = mysql_query("select * from $t_board"."_$id where headnum>-2000000000 order by headnum asc limit $num", $connect) or die(mysql_error()); $tmpStr = explode("[loop]",$str); $header = $tmpStr[0]; $tmpStr2 = explode("[/loop]",$tmpStr[1]); $loop = $tmpStr2[0]; $footer = $tmpStr2[1]; // 制作公告形式时使用 if(eregi("\[notice\_",$header)) { $data=mysql_fetch_array($result); $memo = stripslashes($data[memo]); if($data[use_html]<2) $memo = nl2br($memo); else $memo = strip_tags($memo); $filename1 = $data[file_name1]; $filename2 = $data[file_name2]; if(eregi("\.gif|\.jpg",$filename1))$uploadimage1 = "
"; else $uploadimage1=""; if(eregi("\.gif|\.jpg",$filename2))$uploadimage2 = "
"; else $uploadimage2=""; $memo = autolink($uploadimage1.$uploadimage2.$memo); if($data[ismember]) { $imageBoxPattern = "/\[img\:(.+?)\.(jpg|gif)\,align\=([a-z]){0,}\,width\=([0-9]+)\,height\=([0-9]+)\,vspace\=([0-9]+)\,hspace\=([0-9]+)\,border\=([0-9]+)\]/i"; $memo=preg_replace($imageBoxPattern,"", stripslashes($memo)); } $subject = cut_str(stripslashes($data[subject]),$textlen).""; $date = date($datetype, $data[reg_date]); $header = str_replace("[notice_memo]",$memo,$header); $header = str_replace("[notice_subject]",$subject,$header); $header = str_replace("[notice_date]",$date,$header); } $main_data = ""; while($data=mysql_fetch_array($result)) { $no_img = "latest_skin/$skinname/images/no_img.gif"; //noimg 无图 $memo = stripslashes($data[memo]); if($data[use_html]<2) $memo = nl2br($memo); else $memo = strip_tags($memo); $filename1 = "data/$id/zbfans_thumb_".$data[no].".thumb"; // if(file_exists($_zb_path.$filename1)) $filename = $_zb_path.$filename1; // elseif(eregi("\.jpg|\.png|\.gif|\.jpeg",$data[file_name1])) $filename = $_zb_path.$data[file_name1]; elseif(eregi("\.jpg|\.png|\.gif|\.jpeg",$data[file_name2])) $filename = $_zb_path.$data[file_name2]; elseif(file_exists($_zb_path.$no_img)) $filename = $_zb_path.$no_img; else $filename=""; $img_info = getimagesize ($filename); $sx = $img_info[0]; $sy = $img_info[1]; if ($sx>$xsize || $sy>$ysize) { if ($sx>$sy) { $img_size[1]=ceil(($sy*$xsize)/$sx); $img_size[0]=$xsize; } else { $img_size[0]=ceil(($sx*$ysize)/$sy); $img_size[1]=$ysize; } } else { $img_size[1]=$sy; $img_size[0]=$sx; } $name = stripslashes($data[name]); $subject = cut_str(stripslashes($data[subject]),$textlen).""; $date = date($datetype, $data[reg_date]); if($data[total_comment]) $comment = "[".$data[total_comment]."]"; else $comment=""; $main = $loop; $main = str_replace("[name]",$name,$main); $main = str_replace("[date]",$date,$main); $main = str_replace("[memo]",$memo,$main); $main = str_replace("[subject]","$subjectc".$subject."",$main); $main = str_replace("[comment]",$comment,$main); if ($setup[use_category]) { $category = mysql_query("select name from zetyx_board_category_".$id." where no='$data[category]'",$connect); $main = str_replace("[category]",mysql_result($category,0,0),$main); } else {$main = str_replace("[category]","",$main); } $main = str_replace("[news]","".$subject."",$main); $check_time=(time()-$data[reg_date])/60/60; if($check_time<=24) $main= str_replace("[new]"," ",$main); else $main= str_replace("[new]"," ",$main); $main_data .= "\n".$main; } $list = $header.$main_data.$footer; $list = str_replace("[title]","".$title."",$list); $list = str_replace("[img]",$imgList,$list); $list = str_replace("[dir]",$_zb_url."latest_skin/".$skinname."/images/",$list); echo $list; } // 最新推荐(一般论坛形式) function print_survey($skinname, $title, $id, $textlen=30) { global $_zb_path, $_zb_url, $connect, $t_board, $admin_table, $HTTP_SESSION_VARS; if(!$skinname||!$id) return; $str = zReadFile($_zb_path."latest_skin/".$skinname."/main.html"); if(!$str) { echo "指定的$skinname最新主题SKIN不存在
"; return; } $tmpResult = mysql_query("select use_alllist from $admin_table where name='$id'") or die(mysql_error()); $setup = mysql_fetch_array($tmpResult); if($setup[use_alllist]) $target = "list.html?id=".$id; else $target = "show.html?id=".$id; $result = mysql_query("select * from $t_board"."_$id order by headnum limit 1", $connect) or die(mysql_error()); $tmpData = mysql_fetch_array($result); $no = $tmpData[no]; $headnum = $tmpData[headnum]; $main_subject="".stripslashes($tmpData[subject]).""; if($tmpData[vote]) $main_vote = "[".$tmpData[vote]."]"; else $main_vote=""; $result = mysql_query("select * from $t_board"."_$id where headnum='$headnum' and arrangenum > 0 order by arrangenum", $connect) or die(mysql_error()); $tmpStr = explode("[loop]",$str); $header = $tmpStr[0]; $tmpStr2 = explode("[/loop]",$tmpStr[1]); $loop = $tmpStr2[0]; $footer = $tmpStr2[1]; $main_data = ""; while($data=mysql_fetch_array($result)) { $subject = cut_str(stripslashes($data[subject]),$textlen).""; if($data[vote]) $vote = "[".$data[vote]."]"; else $vote=""; $main = $loop; $main = str_replace("[subject]","".$subject."",$main); $main = str_replace("[vote]",$vote,$main); $main_data .= "\n".$main; } $list = $header.$main_data.$footer; $list = str_replace("[title]","".$title."",$list); $list = str_replace("[dir]",$_zb_url."latest_skin/".$skinname."/images/",$list); $list = str_replace("[main_subject]",$main_subject,$list); $list = str_replace("[main_vote]",$main_vote,$list); echo $list; } // 调入相册形式的SKIN function print_gallery($skinname, $title, $id, $num=10, $xsize=80, $ysize=80, $xnum=10, $type_no=1, $ca=0) { global $_zb_path, $_zb_url, $connect, $t_board, $admin_table, $HTTP_SESSION_VARS; if(!$skinname||!$id) return; $str = zReadFile($_zb_path."latest_skin/".$skinname."/main.html"); if(!$str) { echo "指定的$skinname最新主题SKIN不存在
"; return; } $tmpResult = mysql_query("select use_alllist from $admin_table where name='$id'") or die(mysql_error()); $setup = mysql_fetch_array($tmpResult); if($setup[use_alllist]) $target = "list.html?id=".$id; else $target = "show.html?id=".$id; if($ca == 1) { $category_type = "where category=$type_no "; $category_n = "&category=$type_no"; } $result = mysql_query("select * from $t_board"."_$id $category_type"."order by no desc limit $num", $connect) or die(mysql_error()); $i = 0; while($data=mysql_fetch_array($result)) { if(eregi("\.gif|\.jpg",$data[file_name1])) $filename = $_zb_url.$data[file_name1]; elseif(eregi("\.gif|\.jpg",$data[file_name2])) $filename = $_zb_url.$data[file_name2]; else $filename=""; if($filename) $imgList.=""; else $imgList.=""; $i++; if($i>=$xnum) { $imgList.="
"; $i=0; } else { $imgList.=" "; } } $str = str_replace("[title]","".$title."",$str); $str = str_replace("[img]",$imgList,$str); $str = str_replace("[dir]",$_zb_url."latest_skin/".$skinname."/images/",$str); echo $str; } // 调入list. function print_list($skinname, $title, $id, $num=5, $textlen=30, $textlen2=80, $xsize=80, $ysize=80, $datetype="Y/m/d") { global $_zb_path, $_zb_url, $connect, $t_board, $admin_table, $HTTP_SESSION_VARS; if(!$skinname||!$id||!$title) return; $str = zReadFile($_zb_path."latest_skin/".$skinname."/main.html"); if(!$str) { echo "指定的$skinname最新主题SKIN不存在
"; return; } $setup = mysql_fetch_array(mysql_query("select use_alllist from $admin_table where name='$id'")); if($setup[use_alllist]) $target = "list.html?id=".$id; else $target = "show.html?id=".$id; $result = mysql_query("select * from $t_board"."_$id where is_secret=0 order by no desc limit $num", $connect) or die(mysql_error()); $tmpStr = explode("[loop]",$str); $header = $tmpStr[0]; $tmpStr2 = explode("[/loop]",$tmpStr[1]); $loop = $tmpStr2[0]; $footer = $tmpStr2[1]; $main_data = ""; while($data=mysql_fetch_array($result)) { $name = stripslashes($data[name]); $subject = cut_str(stripslashes($data[subject]),$textlen).""; $date = date($datetype, $data[reg_date]); if($data[total_comment]) $comment = "[".$data[total_comment]."]"; else $comment=""; $memo = cut_str(stripslashes($data[memo]),$textlen2); if($data[use_html]<2) $memo = nl2br($memo); else $memo = strip_tags($memo); $memo = autolink($uploadimage1.$uploadimage2.$memo); $filename1 = "data/$id/thumb_".$data[no].".thumb"; // if(eregi("\.jpg|\.png|\.gif|\.jpeg",$data[file_name1])) $filename = "".$_zb_url."data/$id/thumb_".$data[no].".thumb"; else $filename=""; if($filename) $imgList.=""; else $imgList.=""; $main = $loop; $main = str_replace("[name]",$name,$main); $main = str_replace("[date]",$date,$main); $main = str_replace("[memo]",$memo,$main); //$main = str_replace("[subject]","".$subject."",$main); $memberseup = mysql_fetch_array(mysql_query("select grant_view from $admin_table where name='$id'")); if($memberseup[grant_view] < $member[level]&&!$is_admin){ $subjectc =""; }else{ $subjectc =""; } $main = str_replace("[subject]","".$subject."",$main); $main = str_replace("[comment]",$comment,$main); if ($setup[use_category]) { $category = mysql_query("select name from zetyx_board_category_".$id." where no='$data[category]'",$connect); $main = str_replace("[category]",mysql_result($category,0,0),$main); } else {$main = str_replace("[category]","",$main); } $main = str_replace("[news]","".$subject."",$main); $check_time=(time()-$data[reg_date])/60/60; if($check_time<=24) $main= str_replace("[new]"," ",$main); else $main= str_replace("[new]"," ",$main); $main = str_replace("[img]",$imgList,$main); $imgList=""; $main_data .= "\n".$main; } $list = $header.$main_data.$footer; $list = str_replace("[title]","".$title."",$list); $list = str_replace("[dir]",$_zb_url."latest_skin/".$skinname."/images/",$list); echo $list; } // 调入list. function print_cool($skinname, $title, $id, $num=5, $textlen=30, $textlen2=80, $xsize=80, $ysize=80, $datetype="Y/m/d") { global $_zb_path, $_zb_url, $connect, $t_board, $admin_table, $HTTP_SESSION_VARS; if(!$skinname||!$id||!$title) return; $str = zReadFile($_zb_path."latest_skin/".$skinname."/main.html"); if(!$str) { echo "指定的$skinname最新主题SKIN不存在
"; return; } $setup = mysql_fetch_array(mysql_query("select use_alllist from $admin_table where name='$id'")); if($setup[use_alllist]) $target = "list.html?id=".$id; else $target = "show.html?id=".$id; $result = mysql_query("select * from $t_board"."_$id where is_secret=0 order by no desc limit $num", $connect) or die(mysql_error()); $tmpStr = explode("[loop]",$str); $header = $tmpStr[0]; $tmpStr2 = explode("[/loop]",$tmpStr[1]); $loop = $tmpStr2[0]; $footer = $tmpStr2[1]; $main_data = ""; while($data=mysql_fetch_array($result)) { $name = stripslashes($data[name]); $subject = cut_str(stripslashes($data[subject]),$textlen).""; $date = date($datetype, $data[reg_date]); if($data[total_comment]) $comment = "[".$data[total_comment]."]"; else $comment=""; $memo = cut_str(stripslashes($data[memo]),$textlen2); if($data[use_html]<2) $memo = nl2br($memo); else $memo = strip_tags($memo); $memo = autolink($uploadimage1.$uploadimage2.$memo); $filename1 = "data/$id/thumb_".$data[no].".thumb"; // if(eregi("\.jpg|\.png|\.gif|\.jpeg",$data[file_name1])) $filename = "".$_zb_url."data/$id/thumb_".$data[no].".thumb"; else $filename=""; if($filename) $imgList.=""; else $imgList.=""; $main = $loop; $main = str_replace("[name]",$name,$main); $main = str_replace("[date]",$date,$main); $main = str_replace("[memo]",$memo,$main); //$main = str_replace("[subject]","".$subject."",$main); $memberseup = mysql_fetch_array(mysql_query("select grant_view from $admin_table where name='$id'")); if($memberseup[grant_view] < $member[level]&&!$is_admin){ $subjectc =""; }else{ $subjectc =""; } $main = str_replace("[subject]","".$subject."",$main); $main = str_replace("[comment]",$comment,$main); if ($setup[use_category]) { $category = mysql_query("select name from zetyx_board_category_".$id." where no='$data[category]'",$connect); $main = str_replace("[category]",mysql_result($category,0,0),$main); } else {$main = str_replace("[category]","",$main); } $main = str_replace("[news]","".$subject."",$main); $check_time=(time()-$data[reg_date])/60/60; if($check_time<=24) $main= str_replace("[new]"," ",$main); else $main= str_replace("[new]"," ",$main); $main = str_replace("[img]",$imgList,$main); $imgList=""; $main_data .= "\n".$main; } $list = $header.$main_data.$footer; $list = str_replace("[title]","".$title."",$list); $list = str_replace("[dir]",$_zb_url."latest_skin/".$skinname."/images/",$list); echo $list; } // 调入list. function print_new($skinname, $title, $id, $num=5, $textlen=30, $textlen2=80, $xsize=80, $ysize=80, $datetype="Y/m/d") { global $_zb_path, $_zb_url, $connect, $t_board, $admin_table, $HTTP_SESSION_VARS; if(!$skinname||!$id||!$title) return; $str = zReadFile($_zb_path."latest_skin/".$skinname."/main.html"); if(!$str) { echo "指定的$skinname最新主题SKIN不存在
"; return; } $setup = mysql_fetch_array(mysql_query("select use_alllist from $admin_table where name='$id'")); if($setup[use_alllist]) $target = "list.html?id=".$id; else $target = "show.html?id=".$id; $result = mysql_query("select * from $t_board"."_$id where is_secret=0 order by no desc limit $num", $connect) or die(mysql_error()); $tmpStr = explode("[loop]",$str); $header = $tmpStr[0]; $tmpStr2 = explode("[/loop]",$tmpStr[1]); $loop = $tmpStr2[0]; $footer = $tmpStr2[1]; $main_data = ""; while($data=mysql_fetch_array($result)) { $name = stripslashes($data[name]); $subject = cut_str(stripslashes($data[subject]),$textlen).""; $date = date($datetype, $data[reg_date]); if($data[total_comment]) $comment = "[".$data[total_comment]."]"; else $comment=""; $memo = cut_str(stripslashes($data[memo]),$textlen2); if($data[use_html]<2) $memo = nl2br($memo); else $memo = strip_tags($memo); $memo = autolink($uploadimage1.$uploadimage2.$memo); $filename1 = "data/$id/thumb_".$data[no].".thumb"; // if(eregi("\.jpg|\.png|\.gif|\.jpeg",$data[file_name1])) $filename = "".$_zb_url."data/$id/thumb_".$data[no].".thumb"; else $filename=""; if($filename) $imgList.=""; else $imgList.=""; $main = $loop; $main = str_replace("[name]",$name,$main); $main = str_replace("[date]",$date,$main); $main = str_replace("[memo]",$memo,$main); //$main = str_replace("[subject]","".$subject."",$main); $memberseup = mysql_fetch_array(mysql_query("select grant_view from $admin_table where name='$id'")); if($memberseup[grant_view] < $member[level]&&!$is_admin){ $subjectc =""; }else{ $subjectc =""; } $main = str_replace("[subject]","".$subject."",$main); $main = str_replace("[comment]",$comment,$main); if ($setup[use_category]) { $category = mysql_query("select name from zetyx_board_category_".$id." where no='$data[category]'",$connect); $main = str_replace("[category]",mysql_result($category,0,0),$main); } else {$main = str_replace("[category]","",$main); } $main = str_replace("[news]","".$subject."",$main); $check_time=(time()-$data[reg_date])/60/60; if($check_time<=24) $main= str_replace("[new]"," ",$main); else $main= str_replace("[new]"," ",$main); $main = str_replace("[img]",$imgList,$main); $imgList=" "; $main_data .= "\n".$main; } $list = $header.$main_data.$footer; $list = str_replace("[title]","".$title."",$list); $list = str_replace("[dir]",$_zb_url."latest_skin/".$skinname."/images/",$list); echo $list; } ?>