パスワードを入力して下さい
\n"; del 2009.01.08 Erina.K
echo "Please enter the password.
\n"; //add 2009.01.08 Erina.K
echo "\n"; del 2009.01.08 Erina.K
echo "\n"; //add 2009.01.08 Erina.K
}else {
// 削除処理
if ($del) {
// 削除情報をマッチングし更新
$delall = file($logfile);
while(list(,$delline)=each($delall)){
// list($no,$date,$name,$email,$sub,$com,$url,$host) = explode("<>",$delline); del 2009.01.08 Erina.K
list($no,$date,$position,$firstname,$middlename,$familyname,$email,$institution,$country,$presentation,$presentationmethod,$presentationtitle,$banquet,$host) = explode("<>",$delline); //add 2009.01.08 Erina.K
if ($del != "$no") { $dellog[]=$delline; }
}
// ログを更新
renewlog($dellog);
}
// 削除画面を表示
echo "\n"; del 2009.01.08 Erina.K
echo "\n"; //add 2009.01.08 Erina.K
}
echo "\n";
}
/*del_sta 2009.01.09 Erina.K
//---------------------------------------------------------------------
// ディレクトリロック
//---------------------------------------------------------------------
function lock_dir($name=""){//ディレクトリロック
if($name=="") $name="lock";
// 3分以上前のディレクトリなら解除失敗とみなして削除
if ((file_exists($name))&&filemtime($name) < time() - 180) {
@RmDir($name);
}
do{
if (@MkDir($name,0777)){
return 1;
}
sleep(1);// 一秒待って再トライ
$i++;
}while($i < 5);
return 0;
}
//---------------------------------------------------------------------
// ロック解除
//---------------------------------------------------------------------
function unlock_dir($name=""){//ロック解除
if($name=="") $name="lock";
@rmdir($name);
}
*/ //del_end 2009.01.09 Erina.K
//add_sta 2009.01.09 Erina.K
//---------------------------------------------------------------------
// ディレクトリロック
//---------------------------------------------------------------------
function lock_dir($firstname=""){//ディレクトリロック
if($firstname=="") $firstname="lock";
// 3分以上前のディレクトリなら解除失敗とみなして削除
if ((file_exists($firstname))&&filemtime($firstname) < time() - 180) {
@RmDir($firstname);
}
do{
if (@MkDir($firstname,0777)){
return 1;
}
sleep(1);// 一秒待って再トライ
$i++;
}while($i < 5);
return 0;
}
//---------------------------------------------------------------------
// ロック解除
//---------------------------------------------------------------------
function unlock_dir($firstname=""){//ロック解除
if($firstname=="") $firstname="lock";
@rmdir($firstname);
}
//add_end 2009.01.09 Erina.K
//---------------------------------------------------------------------
// ログ更新 入力:配列
//---------------------------------------------------------------------
function renewlog($arrline){//ログ更新 入力:配列
global $logfile;
if(LOCKEY==1){ lock_dir(LOCK)
or error("ロックエラー
しばらく待ってからにして下さい"); }
$rp = fopen($logfile, "w");
if(LOCKEY==2){ flock($rp, 2); }
while(list(,$val)=each($arrline)){
fputs($rp,$val);
}
fclose($rp);
if(LOCKEY==1){ unlock_dir(LOCK); }
}
//---------------------------------------------------------------------
// HTML生成
//---------------------------------------------------------------------
function MakeHtml(){ //HTML生成
global $html_file;
head($buf);
Main($buf);
foot($buf);
$hp = @fopen ($html_file,"w");
flock($hp,2);
fputs($hp, $buf);
fclose($hp);
}
//---------------------------------------------------------------------
// HTML表示
//---------------------------------------------------------------------
function ShowHtml(){
head($buf);
Main($buf);
foot($buf);
echo $buf;
}
//---------------------------------------------------------------------
// 過去ログ作成
//---------------------------------------------------------------------
function past_log($data){//過去ログ作成
global $past_no,$past_dir,$past_line,$autolink;
global $hostview; //add 2009.01.13 Erina.K
$fc = @fopen($past_no, "r") or die(__LINE__.$past_no."が開けません");
$count = fgets($fc, 10);
fclose($fc);
$pastfile = $past_dir."index".$count.".html";
if(file_exists($pastfile)) $past = file($pastfile);
// if(sizeof($past) > $past_line){ del 2009.01.13 Erina.K
if(sizeof($past) >= $past_line * 14){ //add 2009.01.13 Erina.K
$count++;
$pf = fopen($past_no, "w");
fputs($pf, $count);
fclose($pf);
$pastfile = $past_dir."index".$count.".html";
$past = "";
}
/*del_sta 2009.01.08 Erina.K
list($pno,$pdate,$pname,$pemail,$psub,
$pcom,$purl,$pho,$ppw) = explode("<>", $data);
*/ //del_end 2009.01.08 Erina.K
//add_sta 2009.01.08 Erina.K
list($pno,$pdate,$pposition,$pfirstname,$pmiddlename,$pfamilyname,$pemail,$pinstitution,$pcountry,$ppresentation,$ppresentationmethod,$ppresentationtitle,$pbanquet,$pho,$ppw) = explode("<>", $data);
//add_end 2009.01.08 Erina.K
// if($purl){ $purl = "HP";} del 2009.01.08 Erina.K
// if($pemail){ $pname = "$pname";} del 2009.01.08 Erina.K
// >がある時は色変更
// $pcom = eregi_replace("(>)([^<]*)", "\\1\\2", $pcom); del 2009.01.08 Erina.K
$ppresentationtitle = eregi_replace("(>)([^<]*)", "\\1\\2", $ppresentationtitle); //add 2009.01.08 Erina.K
$pemail = eregi_replace("\@", "@", $pemail); //add 2009.01.13 Erina.K
// URL自動リンク
// if ($autolink) { $pcom=auto_link($pcom); } del 2009.01.08 Erina.K
if ($autolink) { $ppresentationtitle=auto_link($ppresentationtitle); } //add 2009.01.08 Erina.K
// $dat.="
[$pno] $psub Name:$pname Date:$pdate $purl
\n"; del 2009.01.13 Erina.K
//add_sta 2009.01.13 Erina.K
if($hostview==1){ $pho=""; }
elseif($hostview==2){ $pho="[ $pho ]"; }
else{ $pho=""; }
$dat.="\n";
$dat.="\n";
$dat.="\n";
$dat.=" [No.$pno] $pposition $pfirstname $pmiddlename $pfamilyname | \n";
$dat.=" $pdate $pho | \n";
$dat.="
\n";
$dat.="\n";
$dat.=" \n";
// $dat.=" E-mail address: ***** \n";
$dat.=" Institution: $pinstitution \n";
$dat.=" Country: $pcountry \n";
// $dat.=" Presentation: $ppresentation \n";
// $dat.=" Presentation method: $ppresentationmethod \n";
// $dat.=" Presentation title: $ppresentationtitle \n";
// $dat.=" Attendance to the banquet: $pbanquet \n";
$dat.=" | \n";
$dat.="
\n";
$dat.="
\n";
$dat.="\n";
//add_end 2009.01.13 Erina.K
$np = fopen($pastfile, "w");
fputs($np, $dat);
if($past){
while(list(, $val)=each($past)){ fputs($np, $val); }
}
fclose($np);
}
//add_sta 2009.01.14 Erina.K
//---------------------------------------------------------------------
// 過去ログ作成(TXT)
//---------------------------------------------------------------------
function past_log_txt($data){//過去ログ作成
global $past_no,$past_dir,$past_line;
$fc = @fopen($past_no, "r") or die(__LINE__.$past_no."が開けません");
$count = fgets($fc, 10);
fclose($fc);
$pastfile = $past_dir."past".$count.".log";
if(file_exists($pastfile)) $past = file($pastfile);
// if(sizeof($past) > $past_line){ del 2009.01.13 Erina.K
if(sizeof($past) >= $past_line){ //add 2009.01.13 Erina.K
$count++;
$pf = fopen($past_no, "w");
fputs($pf, $count);
fclose($pf);
$pastfile = $past_dir."past".$count.".log";
$past = "";
}
$dat.= $data;
$np = fopen($pastfile, "w");
fputs($np, $dat);
if($past){
while(list(, $val)=each($past)){ fputs($np, $val); }
}
fclose($np);
}
//add_end 2009.01.14 Erina.K
//---------------------------------------------------------------------
// 過去ログ参照
//---------------------------------------------------------------------
function past_view(){
global $past_no,$past_dir,$past_line,$body,$pno;
$pno = htmlspecialchars($pno);
$fc = @fopen($past_no, "r") or die(__LINE__.$past_no."が開けません");
$count = fgets($fc, 10);
fclose($fc);
if(!$pno) $pno = $count;
// echo '
■ 過去ログ '.$pno.' ■'; del Erina_K 2009.01.13
//add_sta Erina_K 2009.01.14
echo '';
echo '';
echo '';
echo '';
echo '';
echo '- Past log '.$pno.' -';
echo '- Past log '.$pno.' -'; //add Erina_K 2009.01.13
//add_end Erina_K 2009.01.14
//add_sta Erina_K 2009.01.13
echo '';
echo '';
//add_end Erina_K 2009.01.13
// echo ''.$body.'[掲示板に戻る]
■ 過去ログ '.$pno.' ■new← '; del Erina_K 2009.01.13
echo ''.$body.'[Return to the registration form]
- Past log '.$pno.' -
new<-- '; //add Erina_K 2009.01.13
$pastkey = $count;
while ($pastkey > 0) {
if ($pno == $pastkey) {
echo "[$pastkey]";
} else {
echo "[$pastkey]";
}
$pastkey--;
}
// echo ' →old
'.$past_line.'件ずつ表示'; del Erina_K 2009.01.13
echo ' -->old By '.$past_line.' registration display it.'; //add Erina_K 2009.01.13
$pastfile = $past_dir."index".$pno.".html";
// if(!file_exists($pastfile)) error("
過去ログがみつかりません"); del Erina_K 2009.01.13
if(!file_exists($pastfile)) error("
The past log is not found"); //add Erina_K 2009.01.13
include($pastfile);
die("");
}
//---------------------------------------------------------------------
// 自動リンク
//---------------------------------------------------------------------
function auto_link($proto){//自動リンク5/25修正
$proto = ereg_replace("(https?|ftp|news)(://[[:alnum:]\+\$\;\?\.%,!#~*/:@&=_-]+)","\\1\\2",$proto);
return $proto;
}
//---------------------------------------------------------------------
// エラーフォーマット
//---------------------------------------------------------------------
function error($mes){ //エラーフォーマット
global $body;
global $regform;
?>
echo $body; ?>
echo $mes; ?>
Return
exit;
}
/*=====================
メイン
======================*/
switch($mode):
case 'regist':
/* エラーになるためコメントアウト 2009.01.07 Erina.K
require_once("../rbl.php");
if (check_spam()) die("梅干たべてすっぱぃまん!!");
*/
regist();
if($htmlw) MakeHtml();
echo "";
break;
case 'admin':
admin();
break;
case 'usrdel':
usrdel();
if($htmlw) MakeHtml();
ShowHtml();
break;
case 'past':
past_view();
break;
default:
ShowHtml();
break;
endswitch;
?>