527 lines
17 KiB
PHP
527 lines
17 KiB
PHP
<?php
|
||
/*************************************
|
||
* 画像BBS by ToR
|
||
*
|
||
* http://php.s3.to/
|
||
*
|
||
* 画像アップロード掲示板です。
|
||
*
|
||
* 保存用ディレクトリimgを作成して777にします。
|
||
* 空のログファイルimglog.logを用意して666にします。
|
||
* サーバーによってはアプロードできません
|
||
*
|
||
* 2001/09/27 v2.4 画像保存名をローカル→時間名、ページング
|
||
* 2001/10/31 v3.0 作り直し。管理者用投稿ページ作成。フォームも分離可
|
||
* 2001/11/05 v3.1 バグたくさん修正、レス追加
|
||
* 2002/05/19 v3.2 削除関連のバグ修正 copy→move_uploded_file
|
||
**************************************/
|
||
//----設定--------
|
||
// PHP4.1.2以上で動かない場合以下の//を取る
|
||
//extract($_POST);
|
||
//extract($_GET);
|
||
//extract($_COOKIE);
|
||
//extract($_SERVER);
|
||
//extract($_FILES);
|
||
|
||
define(LOGFILE, 'imglog.log'); //ログファイル名
|
||
define(IMG_DIR, '/img/'); //画像保存ディレクトリ。gazou.phpから見て
|
||
|
||
define(TITLE, '画像BBS'); //タイトル(<title>とTOP)
|
||
define(HOME, 'http://php.s3.to'); //「ホーム」へのリンク
|
||
|
||
define(MAX_KB, '100'); //投稿容量制限 KB(phpの設定により2Mまで
|
||
define(MAX_W, '250'); //投稿サイズ幅(これ以上はwidthを縮小
|
||
define(MAX_H, '250'); //投稿サイズ高さ
|
||
|
||
define(PAGE_DEF, '7'); //一ページに表示する記事
|
||
define(LOG_MAX, '200'); //ログ最大行数
|
||
|
||
define(ADMIN_PASS, '0123'); //管理者パス
|
||
define(CHECK, 0); //管理者がチェックしてから画像表示?yes=1
|
||
define(SOON_ICON, 'soon.jpg'); //チェック中の時の代替画像
|
||
define(RE_COL, '789922'); //>が付いた時の色
|
||
|
||
define(BUNRI, 0); //投稿フォームを分離する?
|
||
|
||
define(PHP_SELF, $PHP_SELF); //このスクリプト名
|
||
|
||
//画像保存相対パス $path="/home/public_html/***/img/";
|
||
$path = dirname($PATH_TRANSLATED).IMG_DIR;
|
||
|
||
/* ヘッダ */
|
||
function head(&$dat){
|
||
$dat.='
|
||
<html><head>
|
||
<META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=Shift_JIS">
|
||
<STYLE TYPE="text/css">
|
||
<!--
|
||
body,tr,td,th { font-size:10pt }
|
||
a:hover { color:#DD0000; }
|
||
span { font-size:20pt }
|
||
small { font-size:8pt }
|
||
-->
|
||
</STYLE>
|
||
<title>'.TITLE.'</title></head>
|
||
<body bgcolor="#FFFFEE" text="#800000" link="#0000EE" vlink="#0000EE">
|
||
<p align=right>
|
||
[<a href="'.HOME.'" target="_top">ホーム</a>]
|
||
[<a href="'.PHP_SELF.'?mode=admin">管理用</a>]
|
||
<p align=center>
|
||
<font color="#800000" face="MS Pゴシック" size=5>
|
||
<b><SPAN>'.TITLE.'</SPAN></b></font>
|
||
<hr width="90%" size=1>
|
||
';
|
||
}
|
||
/* 投稿フォーム */
|
||
function form(&$dat,$resno,$admin=""){
|
||
global $gazoubbs;
|
||
|
||
list($cname,$cemail,$cpass) = explode(",", $gazoubbs);
|
||
|
||
$maxbyte = MAX_KB * 1024;
|
||
if($resno){
|
||
$find = false;
|
||
$line = file(LOGFILE);
|
||
for($i = 0; $i < count($line); $i++){
|
||
list($no,$now,$name,$email,$sub,$com,) = explode(",", $line[$i]);
|
||
if($no == $resno){
|
||
$find = true;
|
||
break;
|
||
}
|
||
}
|
||
if(!$find) error("該当記事がみつかりません");
|
||
|
||
if(ereg("Re\[([0-9])\]:", $sub, $reg)){
|
||
$reg[1]++;
|
||
$r_sub=ereg_replace("Re\[([0-9])\]:", "Re[$reg[1]]:", $sub);
|
||
}elseif(ereg("^Re:", $sub)){
|
||
$r_sub=ereg_replace("^Re:", "Re[2]:", $sub);
|
||
}else{
|
||
$r_sub = "Re:$sub";
|
||
}
|
||
$r_com = ">$com";
|
||
$r_com = ereg_replace("<br( /)?>","\r>",$r_com);
|
||
$msg = "<h5>No. $no へのレスです</h5>";
|
||
}
|
||
if($admin){
|
||
$hidden = "<input type=hidden name=admin value=\"".ADMIN_PASS."\">";
|
||
$msg = "<h4>タグがつかえます</h4>";
|
||
}
|
||
$dat.='
|
||
<center>'.$msg.'
|
||
<form action="'.PHP_SELF.'" method="POST" enctype="multipart/form-data">
|
||
<input type=hidden name=mode value="regist">
|
||
'.$hidden.'
|
||
<input type=hidden name="MAX_FILE_SIZE" value="'.$maxbyte.'">
|
||
<table cellpadding=1 cellspacing=1>
|
||
<tr>
|
||
<td bgcolor=#eeaa88><b>おなまえ</b></td>
|
||
<td><input type=text name=name size="28" value="'.$cname.'"></td>
|
||
</tr>
|
||
<tr>
|
||
<td bgcolor=#eeaa88><b>Eメール</b></td>
|
||
<td><input type=text name=email size="28" value="'.$cemail.'"></td>
|
||
</tr>
|
||
<tr>
|
||
<td bgcolor=#eeaa88><b>題 名</b></td>
|
||
<td>
|
||
<input type=text name=sub size="35" value="'.$r_sub.'">
|
||
<input type=submit value="送信する"><input type=reset value="リセット">
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<td bgcolor=#eeaa88><b>コメント</b></td>
|
||
<td><textarea name=com cols="48" rows="4" wrap=soft>'.$r_com.'</textarea>
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<td bgcolor=#eeaa88><b>URL</b></td>
|
||
<td><input type=text name=url size="63" value="http://"></td>
|
||
</tr>
|
||
<tr>
|
||
<td bgcolor=#eeaa88><b>添付File</b></td>
|
||
<td><input type=file name=upfile size="35"></td>
|
||
</tr>
|
||
<tr>
|
||
<td bgcolor=#eeaa88><b>削除キー</b></td>
|
||
<td>
|
||
<input type=password name=pwd size=8 maxlength=8 value="'.$cpass.'">
|
||
<small>(記事の削除用。英数字で8文字以内)</small>
|
||
</td>
|
||
</tr>
|
||
<tr><td colspan=2>
|
||
<small>
|
||
<LI>添付可能ファイル : GIF, JPG, PNG<br>
|
||
<LI>ブラウザによっては正常に添付できないことがあります。<br>
|
||
<LI>最大投稿データ量は '.MAX_KB.' KB までです。<br>
|
||
<LI>画像は横 '.MAX_W.'ピクセル、縦 '.MAX_H.'ピクセルを超えると縮小表示されます。
|
||
</small>
|
||
</td></tr></table></form></center>
|
||
<hr>
|
||
';
|
||
}
|
||
/* 記事部分 */
|
||
function main(&$dat, $page){
|
||
global $path;
|
||
|
||
$line = file(LOGFILE);
|
||
$st = ($page) ? $page : 0;
|
||
|
||
for($i = $st; $i < $st+PAGE_DEF; $i++){
|
||
if($line[$i]=="") continue;
|
||
list($no,$now,$name,$email,$sub,$com,$url,
|
||
$host,$pwd,$ext,$w,$h,$time,$chk) = explode(",", $line[$i]);
|
||
// URLとメールにリンク
|
||
if($url) $url = "<a href=\"http://$url\" target=_blank>Link</a>";
|
||
if($email) $name = "<a href=\"mailto:$email\">$name</a>";
|
||
$com = auto_link($com);
|
||
$com = eregi_replace("(^|>)(>[^<]*)", "\\1<font color=".RE_COL.">\\2</font>", $com);
|
||
// 画像ファイル名
|
||
$img = $path.$time.$ext;
|
||
$src = '.'.IMG_DIR.$time.$ext;
|
||
/* 自由に変更してください["]=[\"]に */
|
||
// <imgタグ作成
|
||
$imgsrc = "";
|
||
if($ext && is_file($img)){
|
||
$size = ceil(filesize($img) / 1024);//altにサイズ表示
|
||
if(CHECK && $chk != 1){//未チェック
|
||
$imgsrc = "<img src=".SOON_ICON." hspace=20>";
|
||
}elseif($w && $h){//サイズがある時
|
||
$imgsrc = "<a href=\"".$src."\" target=_blank><img src=".$src."
|
||
border=0 align=left width=$w height=$h hspace=20 alt=\"".$size." KB\"></a>";
|
||
}else{//それ以外
|
||
$imgsrc = "<a href=\"".$src."\" target=_blank><img src=".$src."
|
||
border=0 align=left hspace=20 alt=\"".$size." KB\"></a>";
|
||
}
|
||
}
|
||
// メイン作成
|
||
$dat.="No.$no <font color=#cc1105 size=+1><b>$sub</b></font><br> ";
|
||
$dat.="Name <font color=#117743><b>$name</b></font> Date $now $url [<a href=".PHP_SELF."?res=$no>レス</a>]";
|
||
$dat.="<p><blockquote>$imgsrc $com</blockquote><br clear=left><hr>\n";
|
||
|
||
$p++;
|
||
clearstatcache();//ファイルのstatをクリア
|
||
}
|
||
$prev = $st - PAGE_DEF;
|
||
$next = $st + PAGE_DEF;
|
||
// 改ページ処理
|
||
$dat.="<table align=left><tr>\n";
|
||
if($prev >= 0){
|
||
$dat.="<td><form action=\"".PHP_SELF."\" method=POST>";
|
||
$dat.="<input type=hidden name=page value=$prev>";
|
||
$dat.="<input type=submit value=\"前のページ\" name=submit>\n";
|
||
$dat.="</form></td>\n";
|
||
}
|
||
if($p >= PAGE_DEF && count($line) > $next){
|
||
$dat.="<td><form action=\"".PHP_SELF."\" method=POST>";
|
||
$dat.="<input type=hidden name=page value=$next>";
|
||
$dat.=" <input type=submit value=\"次のページ\" name=submit>\n";
|
||
$dat.="</form></td>\n";
|
||
}
|
||
$dat.="</td>\n</tr></table>\n";
|
||
}
|
||
/* フッタ */
|
||
function foot(&$dat){
|
||
$dat.='
|
||
<table align=right><tr>
|
||
<td nowrap align=center><form action="'.PHP_SELF.'" method=POST>
|
||
<input type=hidden name=mode value=usrdel>
|
||
【記事削除】<br>
|
||
記事No<input type=text name=no size=3>
|
||
削除キー<input type=password name=pwd size=4 maxlength=8>
|
||
<input type=submit value="削除">
|
||
</form></td>
|
||
</tr></table><br clear=all>
|
||
<center><P><small><!-- GazouBBS v3.0 -->
|
||
- <a href="http://php.s3.to" target=_top>GazouBBS</a> -
|
||
</small></center>
|
||
</body></html>
|
||
';
|
||
}
|
||
/* 記事書き込み */
|
||
function regist($name,$email,$sub,$com,$url,$pwd,$upfile,$upfile_name){
|
||
global $REQUEST_METHOD,$path;
|
||
|
||
if($REQUEST_METHOD != "POST") error("不正な投稿をしないで下さい");
|
||
// フォーム内容をチェック
|
||
if(!$name||ereg("^( | )*$",$name)) error("名前が書き込まれていません");
|
||
if(!$com||ereg("^( | |\t)*$",$com)) error("本文が書き込まれていません");
|
||
if(!$sub||ereg("^( | )*$",$sub)) $sub="(無題)";
|
||
if(strlen($com) > 1000) error("本文が長すぎますっ!");
|
||
|
||
$line = file(LOGFILE);
|
||
// 時間とホスト取得
|
||
$tim = time();
|
||
$host = gethostbyaddr(getenv("REMOTE_ADDR"));
|
||
// 連続投稿チェック
|
||
list($lastno,,$lname,,,$lcom,,$lhost,,,,,$ltime,) = explode(",", $line[0]);
|
||
if(RENZOKU && $host == $lhost && $tim - $ltime < RENZOKU)
|
||
error("連続投稿はもうしばらく時間を置いてからお願い致します");
|
||
// No.とパスと時間とURLフォーマット
|
||
$no = $lastno + 1;
|
||
$c_pass = $pwd;
|
||
$pass = ($pwd) ? substr(md5($pwd),2,8) : "*";
|
||
$now = gmdate("Y/m/d(D) H:i",$tim+9*60*60);
|
||
$url = ereg_replace("^http://", "", $url);
|
||
//テキスト整形
|
||
$name = CleanStr($name);
|
||
$email= CleanStr($email);
|
||
$sub = CleanStr($sub);
|
||
$url = CleanStr($url);
|
||
$com = CleanStr($com);
|
||
// 改行文字の統一。
|
||
$com = str_replace( "\r\n", "\n", $com);
|
||
$com = str_replace( "\r", "\n", $com);
|
||
// 連続する空行を一行
|
||
$com = ereg_replace("\n(( | )*\n){3,}","\n",$com);
|
||
$com = nl2br($com); //改行文字の前に<br>を代入する
|
||
$com = str_replace("\n", "", $com); //\nを文字列から消す。
|
||
// 二重投稿チェック
|
||
if($name == $lname && $com == $lcom)
|
||
error("二重投稿は禁止です<br><br><a href=$PHP_SELF>リロード</a>");
|
||
// ログ行数オーバー
|
||
if(count($line) >= LOG_MAX){
|
||
for($d = count($line)-1; $d >= LOG_MAX-1; $d--){
|
||
list($dno,,,,,,,,,$ext,,,$dtime,) = explode(",", $line[$d]);
|
||
if(is_file($path.$dtime.$ext)) unlink($path.$dtime.$ext);
|
||
$line[$d] = "";
|
||
}
|
||
}
|
||
// アップロード処理
|
||
if($upfile != "none"){
|
||
$dest = $path.$upfile_name;
|
||
move_uploaded_file($upfile, $dest);
|
||
//copy($upfile, $dest);
|
||
if(!is_file($dest)) error("アップロードに失敗しました。サーバがサポートしていない可能性があります");
|
||
$size = getimagesize($dest);
|
||
$W = $size[0];
|
||
$H = $size[1];
|
||
$ext = substr($upfile_name,-4);
|
||
rename($dest,$path.$tim.$ext);
|
||
// 画像表示縮小
|
||
if($W > MAX_W || $H > MAX_H){
|
||
$W2 = MAX_W / $W;
|
||
$H2 = MAX_H / $H;
|
||
|
||
($W2 < $H2) ? $key = $W2 : $key = $H2;
|
||
|
||
$W = $W * $key;
|
||
$H = $H * $key;
|
||
}
|
||
$mes = "画像 $upfile_name のアップロードが成功しました<br><br>";
|
||
}
|
||
$chk = (CHECK) ? 0 : 1;//未チェックは0
|
||
|
||
//クッキー保存
|
||
$cookvalue = implode(",", array($name,$email,$c_pass));
|
||
setcookie ("gazoubbs", $cookvalue,time()+14*24*3600); /* 2週間で期限切れ */
|
||
|
||
$newline = "$no,$now,$name,$email,$sub,$com,$url,$host,$pass,$ext,$W,$H,$tim,$chk,\n";
|
||
|
||
$fp = fopen(LOGFILE, "w");
|
||
flock($fp, 2);
|
||
fputs($fp, $newline);
|
||
fputs($fp, implode('', $line));
|
||
fclose($fp);
|
||
|
||
echo "$msg 画面を切り替えます";
|
||
echo "<META HTTP-EQUIV=\"refresh\" content=\"1;URL=".PHP_SELF."?\">";
|
||
}
|
||
/* テキスト整形 */
|
||
function CleanStr($str){
|
||
global $admin;
|
||
|
||
$str = trim($str);//先頭と末尾の空白除去
|
||
if (get_magic_quotes_gpc()) {//¥を削除
|
||
$str = stripslashes($str);
|
||
}
|
||
if($admin!=ADMIN_PASS){//管理者はタグ可能
|
||
$str = htmlspecialchars($str);//タグっ禁止
|
||
$str = str_replace("&", "&", $str);//特殊文字
|
||
}
|
||
return str_replace(",", ",", $str);//カンマを変換
|
||
}
|
||
/* ユーザー削除 */
|
||
function usrdel($no,$pwd){
|
||
global $path;
|
||
|
||
if($no == "") error("削除Noが入力漏れです");
|
||
|
||
$line = file(LOGFILE);
|
||
$flag = FALSE;
|
||
|
||
for($i = 0; $i<count($line); $i++){
|
||
list($dno,,,,,,,,$pass,$dext,,,$dtim,) = explode(",", $line[$i]);
|
||
if($no == $dno) {
|
||
if(substr(md5($pwd),2,8) == $pass || ($pwd == '' && $pass == '*')){
|
||
$flag = TRUE;
|
||
$line[$i] = ""; //パスワードがマッチした行は空に
|
||
$delfile = $path.$dtim.$dext; //削除ファイル
|
||
break;
|
||
}
|
||
}
|
||
}
|
||
if(!$flag) error("該当記事が見つからないかパスワードが間違っています");
|
||
// ログ更新
|
||
$fp = fopen(LOGFILE, "w");
|
||
flock($fp, 2);
|
||
fputs($fp, implode('', $line));
|
||
fclose($fp);
|
||
|
||
if(is_file($delfile)) unlink($delfile);//削除
|
||
}
|
||
/* パス認証 */
|
||
function valid($pass){
|
||
if($pass && $pass != ADMIN_PASS) error("パスワードが違います");
|
||
|
||
head($dat);
|
||
echo $dat;
|
||
echo "[<a href=\"".PHP_SELF."\">掲示板に戻る</a>]\n";
|
||
echo "<table width='100%'><tr><th bgcolor=#E08000>\n";
|
||
echo "<font color=#FFFFFF>管理モード</font>\n";
|
||
echo "</th></tr></table>\n";
|
||
echo "<p><form action=\"".PHP_SELF."\" method=POST>\n";
|
||
// ログインフォーム
|
||
if(!$pass){
|
||
echo "<center><input type=radio name=admin value=del checked>記事削除 ";
|
||
echo "<input type=radio name=admin value=post>管理人投稿<p>";
|
||
echo "<input type=hidden name=mode value=admin>\n";
|
||
echo "<input type=password name=pass size=8>";
|
||
echo "<input type=submit value=\" 認証 \"></form></center>\n";
|
||
die("</body></html>");
|
||
}
|
||
}
|
||
/* 管理者削除 */
|
||
function admindel($delno,$chkno,$pass){
|
||
global $path;
|
||
|
||
if($chkno || $delno){
|
||
$line = file(LOGFILE);
|
||
$find = FALSE;
|
||
for($i = 0; $i < count($line); $i++){
|
||
list($no,$now,$name,$email,$sub,$com,$url,
|
||
$host,$pw,$ext,$w,$h,$tim,$chk) = explode(",",$line[$i]);
|
||
if($chkno == $no){//画像チェック$chk=1に
|
||
$find = TRUE;
|
||
$line[$i] = "$no,$now,$name,$email,$sub,$com,$url,$host,$pw,$ext,$w,$h,$tim,1,\n";
|
||
break;
|
||
}
|
||
if($delno == $no){//削除の時は空に
|
||
$find = TRUE;
|
||
$line[$i] = "";
|
||
$delfile = $path.$tim.$ext; //削除ファイル
|
||
break;
|
||
}
|
||
}
|
||
if($find){//ログ更新
|
||
$fp = fopen(LOGFILE, "w");
|
||
flock($fp, 2);
|
||
fputs($fp, implode('', $line));
|
||
fclose($fp);
|
||
|
||
if(is_file($delfile)) unlink($delfile);//削除
|
||
}
|
||
}
|
||
// 削除画面を表示
|
||
echo "<input type=hidden name=mode value=admin>\n";
|
||
echo "<input type=hidden name=admin value=del>\n";
|
||
echo "<input type=hidden name=pass value=\"$pass\">\n";
|
||
echo "<center><P>削除したい記事のチェックボックスにチェックを入れ、削除ボタンを押して下さい。\n";
|
||
echo "<P><table border=1 cellspacing=0>\n";
|
||
echo "<tr bgcolor=6080f6><th>削除</th><th>記事No</th><th>投稿日</th><th>題名</th>";
|
||
echo "<th>投稿者</th><th>コメント</th><th>ホスト名</th><th>添付<br>(Bytes)</th>";
|
||
if(CHECK) echo "<th>画像<br>許可</th>";
|
||
echo "</tr>\n";
|
||
|
||
$line = file(LOGFILE);
|
||
|
||
for($j = 0; $j < count($line); $j++){
|
||
$img_flag = FALSE;
|
||
list($no,$now,$name,$email,$sub,$com,$url,
|
||
$host,$pw,$ext,$w,$h,$time,$chk) = explode(",",$line[$j]);
|
||
// フォーマット
|
||
list($now,$dmy) = split("\(", $now);
|
||
if($email) $name="<a href=\"mailto:$email\">$name</a>";
|
||
$com = str_replace("<br />"," ",$com);
|
||
$com = htmlspecialchars($com);
|
||
if(strlen($com) > 40) $com = substr($com,0,38) . " ...";
|
||
// 画像があるときはリンク
|
||
if($ext && is_file($path.$time.$ext)){
|
||
$img_flag = TRUE;
|
||
$clip = "<a href=\".".IMG_DIR.$time.$ext."\" target=_blank>".$time.$ext."</a>";
|
||
$size = filesize($path.$time.$ext);
|
||
$all += $size; //合計計算
|
||
}else{
|
||
$clip = "";
|
||
$size = 0;
|
||
}
|
||
$bg = ($j % 2) ? "d6d6f6" : "f6f6f6";//背景色
|
||
|
||
echo "<tr bgcolor=$bg><th><input type=checkbox name=del value=\"$no\"></th>";
|
||
echo "<th>$no</th><td><small>$now</small></td><td>$sub</td>";
|
||
echo "<td><b>$name</b></td><td><small>$com</small></td>";
|
||
echo "<td>$host</td><td align=center>$clip<br>($size)</td>\n";
|
||
|
||
if(CHECK){//画像チェック
|
||
if($img_flag && $chk == 1){
|
||
echo "<th><font color=red>OK</font></th>";
|
||
}elseif($img_flag && $chk != 1) {
|
||
echo "<th><input type=checkbox name=chk value=$no></th>";
|
||
}else{
|
||
echo "<td><br></td>";
|
||
}
|
||
}
|
||
echo "</tr>\n";
|
||
}
|
||
if(CHECK) $msg = "or許可する";
|
||
|
||
echo "</table><p><input type=submit value=\"削除する$msg\">";
|
||
echo "<input type=reset value=\"リセット\"></form>";
|
||
|
||
$all = (int)($all / 1024);
|
||
echo "【 画像データ合計 : <b>$all</b> KB 】";
|
||
die("</center></body></html>");
|
||
}
|
||
/* オートリンク */
|
||
function auto_link($proto){
|
||
$proto = ereg_replace("(https?|ftp|news)(://[[:alnum:]\+\$\;\?\.%,!#~*/:@&=_-]+)","<a href=\"\\1\\2\" target=\"_blank\">\\1\\2</a>",$proto);
|
||
return $proto;
|
||
}
|
||
/* エラー画面 */
|
||
function error($mes){
|
||
global $upfile_name,$path;
|
||
|
||
if(is_file($path.$upfile_name)) unlink($path.$upfile_name);
|
||
|
||
head($dat);
|
||
echo $dat;
|
||
echo "<br><br><hr size=1><br><br>
|
||
<center><font color=red size=5><b>$mes</b></font></center>
|
||
<br><br><hr size=1>";
|
||
die("</body></html>");
|
||
}
|
||
/*-----------Main-------------*/
|
||
switch($mode){
|
||
case 'regist':
|
||
regist($name,$email,$sub,$com,$url,$pwd,$upfile,$upfile_name);
|
||
break;
|
||
case 'admin':
|
||
valid($pass);
|
||
if($admin=="del") admindel($del,$chk,$pass);
|
||
if($admin=="post"){
|
||
echo "</form>";
|
||
form($post,$res,1);
|
||
echo $post;
|
||
die("</body></html>");
|
||
}
|
||
break;
|
||
case 'usrdel':
|
||
usrdel($no,$pwd);
|
||
default:
|
||
head($buf);
|
||
if(!BUNRI) form($buf,$res);
|
||
main($buf,$page);
|
||
foot($buf);
|
||
echo $buf;
|
||
}
|
||
?>
|