$val) { $_GET[$key] = seikei($_GET[$key]); }
//if (isset($_POST)) foreach ((array) $_POST as $key => $val) { $_POST[$key] = seikei($_POST[$key]); }
foreach ($_GET as $key => $val) {
if (strcmp($key, "del_comment") == 0) continue;
$_GET[$key] = seikei($_GET[$key]);
}
foreach ($_POST as $key => $val) {
if (strcmp($key, "del_comment") == 0) continue;
$_POST[$key] = seikei($_POST[$key]);
}
extract($_POST, EXTR_PREFIX_ALL, "in");
extract($_GET, EXTR_PREFIX_ALL, "in");
extract($_COOKIE, EXTR_PREFIX_ALL, "co");
extract($_SERVER);
$in_act = (isset($in_act)) ? $in_act : null;
$in_thread = (isset($in_thread)) ? $in_thread : null;
if (strcmp($in_bbs, "syotabl") == 0 && !$in_del_pw) { echo"403"; exit;}
// mottoki.com/bbs/index からinした場合
if (strpos($SCRIPT_NAME, '/bbs/') !== false) {
if (strpos($_SERVER[HTTP_USER_AGENT], 'Googlebot') === false
&& strpos($_SERVER[HTTP_USER_AGENT], 'bingbot') === false
&& strpos($_SERVER[HTTP_USER_AGENT], 'ezooms.bot') === false
&& strpos($_SERVER[HTTP_USER_AGENT], 'AhrefsBot') === false
&& strpos($_SERVER[HTTP_USER_AGENT], 'search') === false) {
// データベース記録
$host = gethostbyaddr(getenv("REMOTE_ADDR"));
$referer = urlencode($_SERVER['HTTP_REFERER']); // URL エンコード %56%46
DB_connect() or die('Unable to connect to database server!');
DB_query("insert into `bbs`.`___@url_in@___` (bbs_url, bbs_new_IP, bbs_new_host, bbs_new_agent, bbs_new_refere, bbs_new_date) "
."values('$in_bbs', '$_SERVER[REMOTE_ADDR]', '$host', '$_SERVER[HTTP_USER_AGENT]', '$referer', now())");
DB_close();
}
// 飛ばす
$href = function_href();
header("Location: http://bbs.mottoki.com/?bbs=$in_bbs{$href}");
}
//*
if(strcmp($in_read_pw, '3594@@') == 0 || strcmp($in_del_pw, '3594@@') == 0) {
// 変数
$host = gethostbyaddr(getenv("REMOTE_ADDR"));
$ip = $_SERVER[REMOTE_ADDR];
$agent = $_SERVER[HTTP_USER_AGENT];
$referer = urlencode($_SERVER['HTTP_REFERER']); // URL エンコード %56%46
// admin
$mlms = "";
$mlfr = "From: <{$infomail}>";
$mlsb = "3594@@ アクセス!!";
$mlms .= "$ip\n";
$mlms .= "$host\n";
$mlms .= "$agent\n";
$mlms .= "$referer\n";
$mlms .= "******************\n";
mb_language("Japanese");
mb_internal_encoding("UTF8");
@mb_send_mail($phs_mail, $mlsb, $mlms, $mlfr);
error_comment("ただ今、アクセスを受け付けることが出来ません。
広告をクリックして頂き、しばらくすればアクセスが受け付けられます。");
}
//*/
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 振り分け
if (isset($in_mb) ||
eregi("DoCoMo", $_SERVER['HTTP_USER_AGENT']) ||
eregi("L-mode", $_SERVER['HTTP_USER_AGENT']) ||
eregi("KDDI", $_SERVER['HTTP_USER_AGENT']) ||
eregi("UP.Browser", $_SERVER['HTTP_USER_AGENT']) ||
eregi("J-PHONE", $_SERVER['HTTP_USER_AGENT']) ||
eregi("Vodafone", $_SERVER['HTTP_USER_AGENT']) ||
eregi("SoftBank", $_SERVER['HTTP_USER_AGENT']) ||
eregi("WILLCOM", $_SERVER['HTTP_USER_AGENT']) ||
eregi("DDIPOCKET", $_SERVER['HTTP_USER_AGENT']) ||
eregi("PDXGW", $_SERVER['HTTP_USER_AGENT']) ||
// eregi("iPhone", $_SERVER['HTTP_USER_AGENT']) ||
// eregi("Android", $_SERVER['HTTP_USER_AGENT']) ||
eregi("ASTEL", $_SERVER['HTTP_USER_AGENT'])) { header("Location: ./mobile?bbs=$in_bbs&thread=$in_thread"); exit; }
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
if ($in_id && $in_ss) {
// データベース接続
$link = "db_link";
if(strcmp($_SERVER[SERVER_ADDR], "127.0.0.1") == 0 || strcmp($_SERVER[SERVER_ADDR], "{$DB_method[1][host]}") ==0 || strcmp($_SERVER[SERVER_ADDR], "192.168.0.2") == 0) {
DB_connect() or error_comment('Unable to connect to database server!');
} else {
$$link = mysql_connect($DB_method[1][host], $DB_method[1][user], $DB_method[1][pw]);
if ($$link) mysql_select_db($DB_method[1][name]);
}
$query = DB_query("select * from ". TB_MEMBER1 ." where m_id = '$in_id' and m_session = '$in_ss'");
$dat = DB_fetch_assoc($query);
// セッション変数、HOST、調べる
$host = gethostbyaddr(getenv("REMOTE_ADDR"));
$ip = $_SERVER[REMOTE_ADDR];
$agent = $_SERVER[HTTP_USER_AGENT];
if (strcmp($in_ss, $dat[m_session]) != 0 || strcmp($host, $dat[m_edit_host]) != 0) error_comment("ログイン有効時間失効エラー
お手数ですが、もう一度ログインして下さい。
");
// 経過時間
$val= explode(" ", $dat[m_edit_date]);
$val_date = explode("-", $val[0]);""; $val_time = explode(":", $val[1]);"";
$time_new = time() - mktime($val_time[0], $val_time[1], $val_time[2], $val_date[1], $val_date[2], $val_date[0]); //現在時間から記事投稿時間を引いた値(秒)
// もしedit_login_dateから6時間経過していたらセッションエラー
if ($time_new > 86400) error_comment("ログイン有効時間失効エラー
お手数ですが、もう一度ログインして下さい。
");
// もしedit_login_dateから6時間経過していたら新しいセッション変数「ss」を作成
if ($time_new > 21600) {
$ss = ""; $ss_int = "abcdefghijklmnopqrstuvwxyz0123456789";
for($i=0; $i<17; $i++ ) { $ss .= substr($ss_int,rand(1,35),1); }
$query = DB_query("update ". TB_MEMBER1 ." set m_session = '$ss', "
."m_edit_ip ='$ip' , m_edit_host ='$host' , m_edit_agent ='$agent' , m_edit_date = now() where m_id = '$in_id'");
}
DB_close(43200);
if($ss) $in_ss = $ss;
}
// データベース接続 掲示板管理変数格納
DB_connect() or error_comment('短時間にアクセスが集中しました。
しばらくお待ち頂いてから更新ボタン(F5キー)を押してください。
お手数をおかけします。');
$in_bbs = mysql_real_escape_string($in_bbs);
//$query = DB_query("select * from ". TB_BBS_ADMIN . " inner join ". TB_BBS_SKIN ." on ". TB_BBS_ADMIN .".mbbs_url_id = ". TB_BBS_SKIN .".mbbs_url_id where ". TB_BBS_ADMIN .".mbbs_url_id = '$in_bbs'");
// TB_BBS_ADMIN
$query = DB_query("select * from ". TB_BBS_ADMIN ." where mbbs_url_id = '$in_bbs';");
$mbbs = DB_fetch_assoc($query);
// TB_BBS_SKIN
$query = DB_query("select * from ". TB_BBS_SKIN ." where mbbs_url_id = '$in_bbs';");
$mskin = DB_fetch_assoc($query);
// 読み込みチェック
if(!$mbbs['mbbs_url_id'] && strcmp($in_act, "link") != 0) error_comment("掲示板が見当たりません。");
//広告強制アダルト表示
if (strcmp($in_bbs, "anon_nikki") == 0 || strcmp($in_bbs, "anon_deliverz_20151123") == 0 || strcmp($in_bbs, "no_rule") == 0 ||
strcmp($in_bbs, "papaboshyu_keijiban") == 0 ||
strcmp($in_bbs, "gakuseikoiya") == 0 ||
strcmp($in_bbs, "toiawase") == 0 ||
strcmp($in_bbs, "nonkeoyajimicro") == 0 ||
strcmp($in_bbs, "mgo_community") == 0 ||
$mbbs['mbbs_m_id'] == 4863 || $mbbs['mbbs_m_id'] == 3144 || $mbbs['mbbs_m_id'] == 2817 || $mbbs['mbbs_m_id'] == 5661) {
$mbbs[mbbs_18x] = "1";
}
/*
//syotabl ログ
if (strcmp("syotabl", $in_bbs) == 0) {
// if (strcmp("110-133-138-173.rev.home.ne.jp", $host) == 0) error_comment("ただ今、アクセスを受け付けることが出来ません。
広告をクリックして頂き、しばらくすればアクセスが受け付けられます。");
if (strcmp("124.255.1.132", $_SERVER[REMOTE_ADDR]) == 0) error_comment("ただ今、アクセスを受け付けることが出来ません。
広告をクリックして頂き、しばらくすればアクセスが受け付けられます。");
$host = gethostbyaddr(getenv("REMOTE_ADDR"));
$referer = urlencode($_SERVER['HTTP_REFERER']); // URL エンコード %56%46
DB_query("insert into `bbs`.`___access_chk___` (bbs_new_IP, bbs_new_host, bbs_new_agent, bbs_new_refere, bbs_new_date) "
."values('$_SERVER[REMOTE_ADDR]', '$host', '$_SERVER[HTTP_USER_AGENT]', '$referer', now())");
}
*/
// サンプル $in_bbs が sampleで始まる文字列 なら、sample01 のログを読みこみ
$in_bbs_query = $in_bbs;
if(strcmp(substr($in_bbs,0,6),"sample") == 0) $in_bbs_query = "sample001";
// PC・携帯閲覧許可
if ($mbbs['mbbs_display'] == 1 && strcmp($in_read_pw, $admin_pw_read) != 0) { error_comment_mb("この掲示板は、パソコンから閲覧することができません。
携帯電話から閲覧願います。"); }
// 閲覧パスワード文字列 暗号化
$in_read_pw_input = "";
if ($mbbs['mbbs_read_pw'] && isset($in_crypt) && strcmp($in_crypt, "true") == 0 && strcmp($in_read_pw, $admin_pw_read) != 0) {
$in_read_pw_input = $in_read_pw;
$salt = date('d') + 10;
$in_read_pw = crypt($in_read_pw, $salt);
// cookie保存
$cookie_value = implode(",", array($in_bbs, $in_read_pw));
setcookie ("mottoki_bbs_read", $cookie_value, time()+3600*24, "/", $sitedomain);
}
// 閲覧パスワード ログアウト
if (strcmp($in_act, "logout") == 0) {
// cookie保存
$cookie_value = implode(",", array($in_bbs, ""));
setcookie ("mottoki_bbs_read", $cookie_value, time(), "/", $sitedomain);
$in_read_pw = "";
}
// 削除パスワード文字列 暗号化
$in_del_pw_input = "";
if ($mbbs['mbbs_del'] && $mbbs['mbbs_del_pw'] && isset($in_crypt_del) && strcmp($in_crypt_del, "true") == 0 && strcmp($in_del_pw, $admin_pw_del) != 0) {
$in_del_pw_input = $in_del_pw;
$salt = date('d') + 10;
$in_del_pw = crypt($in_del_pw, $salt);
}
// $in_page $in_read_pw $in_del_pw
$href = function_href();
$href_no_page = function_href_no_page();
// METAタグ
$meta_tag = explode("<>", $mbbs['mbbs_meta_tag']);
$echo_meta_tag = "";
foreach ($meta_tag as $vals) {
$val = explode("##", $vals);
if (!$val['0'] || !$val['1']) continue;
$echo_meta_tag .= " \n";
}
// PC表示方法
// [0]位置 [1]幅 [2]不透明 [3]表示/非表示 [4]順番
// [0]掲示板名 [1]メニュー [2]管理者コメント [3]スレッドタイトル一覧 [4]ページ [5]記事 [6]投稿フォーム [7]カウンター [8]mottoki.com [9]広告
if(!$mskin['mbbs_pc_display'])
$mskin['mbbs_pc_display'] = "center>auto><80%><70%><80%><90%>100><0><100><100><0><100><100><0><0><100<>";
$pc_display = explode("<>", $mskin['mbbs_pc_display']);
$pc_display_0 = explode("><", $pc_display['0']);
$pc_display_1 = explode("><", $pc_display['1']);
$pc_display_2 = explode("><", $pc_display['2']);
// RGBa 用に 16進数色データを10進数に
$pc_comment_bgcolor_rgba = hexdec3($mskin['mbbs_pc_comment_bgcolor']);
$pc_title_bgcolor_rgba = hexdec3($mskin['mbbs_pc_title_bgcolor']);
// 投稿記事の表示方法
// mbbs_many [0]匿名 [1]管理者により削除 [2]キャリア表示番号
$mbbs_many = explode("<>", $mbbs['mbbs_many']);
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 広告
// パスワード制掲示板の場合、ランダムでクリックのお願い表示
//if($mbbs['mbbs_read'] && rand(0,8) == 0) { $ad1_onegai .= "↑広告収入で運営しております。ご興味ありましたら、広告閲覧・購入をよろしくお願いします。↑ |
"; }
//$ad1_onegai = ($mbbs['mbbs_read'] && rand(0,8) == 0) ? "↑広告収入で運営しております。ご興味ありましたら、広告閲覧・購入をよろしくお願いします。↑ |
" : null;
//////////////////////////////////////////////////////////// MAIST広告 function群
function maist_socket($args, $servlet){
$user_agent = $_SERVER['HTTP_USER_AGENT'];
$subno = $_SERVER['HTTP_X_UP_SUBNO'];
$guid = $_SERVER['HTTP_X_DCMGUID'];
if($_SERVER['SERVER_PORT'] == 443) $args .= "&adpds_ssl=1";
$args .= "&adpds_ref=" . rawurlencode($_SERVER['HTTP_REFERER']);
$host = "fpad.maist.jp";
$path = "/ad/m/" . $servlet;
$timeout = 10;
$fp = fsockopen($host, 80, $errno, $errstr, $timeout);
if(!$fp) return '';
$out = "GET ".$path."?".$args." HTTP/1.0\r\n";
$out .= "Host: ".$host."\r\n";
$out .= "User-Agent: ".$user_agent."\r\n";
if($subno != '') $out .= "X-Up-Subno: ".$subno."\r\n";
if($guid != '') $out .= "X-DCMGUID: ".$guid."\r\n";
$out .= "Connection: Close\r\n\r\n";
fwrite($fp, $out);
$buf = '';
$header_sec = true;
while (!feof($fp)) {
$line = fgets($fp, 1024);
if (trim($line) == '')
$header_sec = false;
if ($header_sec == false)
$buf .= $line . "\r\n";
}
fclose($fp);
return $buf;
}
function isDocomoCheck($user_agent){
if(strpos($user_agent, "DoCoMo/") !== false) return true;
if(strpos($user_agent, ";FOMA") !== false) return true;
return false;
}
function maist_ssi($args){
return maist_socket($args, "ssi");
}
function maist_cv($args){
$user_agent = $_SERVER['HTTP_USER_AGENT'];
$ssl = (($_SERVER['SERVER_PORT'] == 443) ? true : false);
$imode = isDocomoCheck($user_agent);
if($imode && $ssl){
maist_socket($args, "cv");
} else {
$http = ($ssl ? 'https' : 'http');
return "";
}
return "";
}
//////////////////////////////////////////////////////////// MAIST広告 function群 end
$rand = mt_rand(1, 30);
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 一般(google)広告
if (!$mbbs['mbbs_18x'] && strcmp($in_read_pw, $admin_pw_read) != 0) {
// google広告
$ad1 = <<
Ads by Google |
|
$ad1_onegai
EOT;
$ad2 = <<
Ads by Google |
|
$ad1_onegai
EOT;
$ad3 = <<
Ads by Google |
|
$ad1_onegai
EOT;
/*
//忍者
$ad1 = <<
|
$ad1_onegai
EOT;
$ad2 = $ad1;
$ad3 = $ad1;
*/
/*
// ランダムでi-mobile 1/30
if ($rand == 2) {
$ad1 = <<
|
$ad1_onegai
EOT;
$ad2 = $ad1;
$ad3 = $ad1;
}
*/
// ランダムで楽天広告表示 1/30
if ($rand == 1 || strcmp($in_page_album, 3) == 0) {
$ad1 = <<
|
$ad1_onegai
EOT;
/*
楽天アフィリエイト
//自動広告
//kobo
*/
}//楽天広告表示end
// ランダムで「もっとき」広告表示
if (mt_rand(1, 20) == 1) {
$ad1 = <<
|
$ad1_onegai
EOT;
}
////////////////////////////////////////////////////////////////////////////////////////////////// 18禁広告
} elseif($mbbs['mbbs_18x'] == 1 && strcmp($in_read_pw, $admin_pw_read) != 0) {
// iPad iPhone Android ////////////////////////////////////////////////////////////
if (eregi("iPhone", $_SERVER['HTTP_USER_AGENT']) || eregi("iPad", $_SERVER['HTTP_USER_AGENT']) || eregi("Android", $_SERVER['HTTP_USER_AGENT'])) {
/////////////////////////////////////////////////////////////////////////////////////////// スマホ 18禁広告
if (!eregi("iPad", $_SERVER['HTTP_USER_AGENT'])) {
////////////////////////////////////////////////////////////////////////////////////////スマホでsyotabl以外
if ((strcmp($in_bbs, "syotabl") == 0 || strcmp($in_bbs, "omutugazou") == 0 || strcmp($in_bbs, "omtg_men") == 0) != true) {
//忍者admax
$ad1 = <<
|
$ad1_onegai
EOT;
/*
//MAIST
$ad2 = <<
|
$ad1_onegai
EOT;
// ジーニー320*50
$ad1 = <<
|
$ad1_onegai
EOT;
*/
$ad3 = $ad1;
// ランダムで「ジーニー」広告表示320*50
/*
if ($rand == 9 || $rand == 10 || $in_page_album == 1 || !$in_page_album) {
$ad2 = <<
|
$ad1_onegai
EOT;
}
*/
/*
// ランダムで「MAIST」広告表示
if ($rand == 1 || $rand == 2 || $in_page_album == 2) {
$ad2 = <<
|
$ad1_onegai
EOT;
}
*/
///*
// ランダムで「アドデラックス」広告表示
if ($rand == 7 || $rand == 8 || $in_page_album == 4) {
$ad2 = <<
|
$ad1_onegai
EOT;
}
//*/
/*
//ランダムで「忍者admax」広告表示
if ($rand == 5 || $rand == 6 || $in_page_album == 5) {
$ad2 = <<
|
$ad1_onegai
EOT;
}
//*/
}//スマホでsyotabl以外end
/////////////////////////////////////スマホでsyotabl
else {
///*
// MAIST header
$ad1 = <<
|
$ad1_onegai
EOT;
//*/
/*
// MAIST footer
$ad2 = <<
|
$ad1_onegai
EOT;
//*/
///*
//ジーニー320*50
$ad2 = <<
|
$ad1_onegai
EOT;
//*/
$ad3 = $ad2;
///*
// ランダムで「ジーニー320*50」広告表示
if ($rand == 9 || $rand == 10 || $in_page_album == 1 || !$in_page_album) {
$ad2 = <<
|
$ad1_onegai
EOT;
}
//*/
///*
///*
// ランダムで「アドデラックス」広告表示
if ($rand == 7 || $rand == 8 || $in_page_album == 3) {
$ad2 = <<
|
$ad1_onegai
EOT;
}
//*/
//*/
///*
// ランダムで「MAIST」広告表示
if ($rand == 1 || $rand == 2 || $in_page_album == 4) {
$ad2 = <<
|
$ad1_onegai
EOT;
}
//*/
}//スマホでsyotabl end
}//スマホend
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// iPad 18禁広告
else {
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////ipadでsyotabl以外
if ((strcmp($in_bbs, "syotabl") == 0 || strcmp($in_bbs, "omutugazou") == 0 || strcmp($in_bbs, "omtg_men") == 0) != true) {
/*
//忍者admax
$ad1 = <<
|
$ad1_onegai
EOT;
//*/
/*
//ジーニー728*90
$ad2 = <<
|
$ad1_onegai
EOT;
//*/
//アドデラックス
$ad3 = <<
|
$ad1_onegai
EOT;
$ad1 = $ad3;
$ad2 = $ad3;
/*
// ランダムで「ジーニー728*90」広告表示
if ($rand == 9 || $rand == 10 || $in_page_album == 1) {
$ad2 = <<
|
$ad1_onegai
EOT;
}
//*/
///*
// ランダムで「アドデラックス」広告表示
if ($rand == 7 || $rand == 8 || $in_page_album == 2) {
$ad2 = <<
|
$ad1_onegai
EOT;
}
//*/
/*
//ランダムで「忍者admax」広告表示
if ($rand == 5 || $rand == 6 || $in_page_album == 3) {
$ad2 = <<
|
$ad1_onegai
EOT;
}
//*/
}//ipadでsyotabl以外end
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////ipadでsyotabl
else {
///*
/*
// ジーニー728*90
$ad1 = <<
|
$ad1_onegai
EOT;
//*/
//アドデラックス
$ad2 = <<
|
$ad1_onegai
EOT;
$ad1 = $ad2;
$ad3 = $ad2;
}//ipadでsyotabl end
//*/
}//iPad end
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// PC その他 18禁広告
} else {
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////PCでsyotabl以外
if ((strcmp($in_bbs, "syotabl") == 0 || strcmp($in_bbs, "omutugazou") == 0 || strcmp($in_bbs, "omtg_men") == 0) != true) {
/*
//忍者admax
$ad1 = <<
|
$ad1_onegai
EOT;
//*/
/*
// ランダムで「ジーニー」広告表示
$ad2 = <<
|
$ad1_onegai
EOT;
//*/
//アドデラックス
$ad3 = <<
|
$ad1_onegai
EOT;
$ad1= $ad3;
$ad2= $ad3;
// ランダムで「ジーニー」広告表示
if ($rand == 9 || $rand == 10 || $in_page_album == 1) {
$ad2 = <<
|
$ad1_onegai
EOT;
}
//*/
///*
// ランダムで「アドデラックス」広告表示
if ($rand == 7 || $rand == 8 || $in_page_album == 2) {
$ad2 = <<
|
$ad1_onegai
EOT;
}
//*/
/*
//ランダムで「忍者admax」広告表示
if ($rand == 5 || $rand == 6 || $in_page_album == 3) {
$ad2 = <<
|
$ad1_onegai
EOT;
}
//*/
}//PCでsyotabl以外end
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////PCでsyotabl
else {
/*
// ジーニー
$ad1 = <<
|
$ad1_onegai
EOT;
/*
*/
/*
//886644
if (mt_rand(1, 3) == 1) {
$ad1 = <<
|
$ad1_onegai
EOT;
} elseif (mt_rand(1, 3) == 2) {
$ad1 = <<
|
$ad1_onegai
EOT;
} else {
$ad1 = <<
|
$ad1_onegai
EOT;
}//886644end
//*/
//アドデラックス
$ad2 = <<
|
$ad1_onegai
EOT;
$ad3 = $ad2;
$ad1 = $ad2;
}//PCでsyotabl end
}// PC その他end
// ランダムで「もっとき」広告表示
if (mt_rand(1, 20) == 1) {
$ad1 = <<
|
$ad1_onegai
EOT;
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////////// 内容的にgoogle広告がまずい掲示板の、一般(i-mobile)広告
} elseif($mbbs['mbbs_18x'] == 9) {
// iPad iPhone Android ////////////////////////////////////////////////////////////
if (eregi("iPhone", $_SERVER['HTTP_USER_AGENT']) || eregi("iPad", $_SERVER['HTTP_USER_AGENT']) || eregi("Android", $_SERVER['HTTP_USER_AGENT'])) {
// MAIST
$ad1 = <<
EOT;
$ad2 = <<
EOT;
$ad3 = $ad1;
// PC その他 ////////////////////////////////////////////////////////////
} else {
///*
// 忍者ninja
function_counter(ninja_admax);
$ad3 = <<
|
$ad1_onegai
EOT;
//$ad2 = $ad1;
//$ad3 = $ad1;
//*/
///*
//アドデラックス
$ad1 = <<
|
$ad1_onegai
EOT;
$ad2 = $ad1;
//$ad3 = $ad1;
//*/
// ランダムで「もっとき」広告表示
if (mt_rand(1, 20) == 1) {
$ad1 = <<
|
$ad1_onegai
EOT;
}
}
} // 広告end
// きりかえ@1216
//if (strcmp($in_bbs, "animal02") == 0 || $mbbs['mbbs_m_id'] == 1216) { $ad1 =""; $ad2 =""; }
// きりかえ@2480
if ($mbbs['mbbs_m_id'] == 2480) {
$ad1 = <<
|
$ad1_onegai
EOT;
$ad2 = $ad1;
$ad3 = $ad1;
}
// $mbbs['mbbs_last_comment'] 読み込み
// 半年未投稿掲示板用広告
//$chk_day = date("Y-m-d H:i:s", time() - 15552000);
//$query = DB_query("select * from ". TB_BBS . $in_bbs_query ." where bbs_new_date > '$chk_day' order by bbs_id desc limit 0, 1;");
if ($mbbs['mbbs_last_comment']) {
// [0]投稿者名 [1]投稿記事 [2]投稿画像 [3]HOST [4]IP [5]AGENT [6]REFERER [7]DATE
$last_comment = explode("<>", $mbbs['mbbs_last_comment']);
$half_year_date = date("Ymd H:i:s", time() - 17280000);// 今日の日付時間
if ($last_comment[7] > $half_year_date) $bbs[bbs_id] = 1;
} else {
$query = DB_query("select * from ". TB_BBS . $in_bbs_query ." where bbs_new_date between (now() - interval 6 month) and now() order by bbs_id desc limit 0, 1;");
$bbs = DB_fetch_assoc($query);
}
// 記事数 count
if ($mbbs['mbbs_comment_count_active']) {
$count[0] = $mbbs['mbbs_comment_count_active'];
} else {
$query_count = DB_query("select count(*) from ". TB_BBS . $in_bbs_query);
$count = DB_fetch_array($query_count); // 記事数 count $count[0]
}
//if (!$bbs[bbs_id] && $mbbs[mbbs_18x] == 0) {
if (!$bbs[bbs_id] && $count[0] != 0 && strcmp(substr($in_bbs,0,6),"sample") != 0) {
if ($mbbs['mbbs_18x'] == 0) {
$echo_ad_harf_year = <<
|
上記広告は、半年以上投稿がない場合に表示されます。 |
EOT;
//
} elseif($mbbs['mbbs_18x'] == 9) {
function_counter(ninja_admax);
$echo_ad_harf_year = <<
|
上記広告は、半年以上投稿がない場合に表示されます。 |
EOT;
// 18禁広告
} elseif($mbbs['mbbs_18x'] == 1) {
if ((strcmp($in_bbs, "syotabl") == 0 || strcmp($in_bbs, "omutugazou") == 0 || strcmp($in_bbs, "omtg_men") == 0) != true) {
//忍者admax
function_counter(ninja_admax);
$echo_ad_harf_year = <<
|
$ad1_onegai
EOT;
} else {
$echo_ad_harf_year = <<
|
上記広告は、半年以上投稿がない場合に表示されます。 |
EOT;
}
}
}// 半年未投稿掲示板用広告end
// 広告 もっとき管理者の場合は、広告非表示にする
if (strcmp($in_del_pw, $admin_pw_del) == 0) {
$ad1 = "";
$ad2 = "";
$ad3 = "";
}
// 広告終了
// 掲示板名、表示方法処理
$val = explode("<>",$mskin['mbbs_pc_name_display']); //[0] 0文字だけで表示 1画像だけで表示 2画像は上、文字を下 3文字は上、画像を下 [1]画像path
$val2 = explode("<>",$mskin['mbbs_pc_name_way']);
$mbbs_name = $mbbs['mbbs_name'];
//$mbbs['mbbs_name'] = "$mbbs[mbbs_name]";
$mbbs['mbbs_name'] = "{$mbbs['mbbs_name']}";
// 掲示板名(タイトル)画像処理
if(@mb_eregi("title00", $val['1'])) { $val['1'] = "./img/$in_bbs/{$val['1']}";
} else { $val[1] = "./img/{$val['1']}"; }
if($val['0'] == 1) {
$mbbs['mbbs_name'] = "";
} elseif($val['0']==2) {
$mbbs['mbbs_name'] = "
{$mbbs['mbbs_name']}";
} elseif($val['0']==3) {
$mbbs['mbbs_name'] = "{$mbbs['mbbs_name']}
";
}
$mbbs['mbbs_name'] = "\n\n";
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 閲覧PW
if($mbbs['mbbs_read']) {
$salt = date('d') + 10;
$mbbs_mbbs_read_pw = crypt($mbbs['mbbs_read_pw'], $salt);//本日
$salt2 = date('d', strtotime('-1 day')) + 10;
$mbbs_mbbs_read_pw2 = crypt($mbbs['mbbs_read_pw'], $salt2);//昨日
//cookie読み込み
if(!$in_read_pw && strcmp($in_act, "logout") != 0) list($chk_bbs, $in_read_pw) = explode(",", $co_mottoki_bbs_read);
// 特定の掲示板の広告削除
if (strcmp($in_bbs, "say_u_daisuki") == 0) {$ad1 = "";}
// フォーム
if(strcmp($mbbs_mbbs_read_pw, $in_read_pw) != 0 && strcmp($mbbs_mbbs_read_pw2, $in_read_pw) != 0 &&
strcmp($admin_pw_read, $in_read_pw) != 0 && strcmp($admin_pw_del, $in_del_pw) != 0 && (!$in_id && !$in_ss)) {
$err = "";
if($in_read_pw) $err = "パスワードが違います。
";
// HOME URL
if ($mbbs['mbbs_home_url']) {
// $echo_home_url = "[HOME]";
$echo_home_url = "\n\n";
} else {
$echo_home_url = "";
}
// 管理者メッセージ
if ($mbbs['mbbs_read_pw_comment']) {
$mbbs['mbbs_read_pw_comment'] = ereg_replace("\n|\r|\r\n","
", $mbbs['mbbs_read_pw_comment']);
$mbbs['mbbs_read_pw_comment'] = auto_link($mbbs['mbbs_read_pw_comment']);
$mbbs_read_pw_comment_method = array("0" => "left", "1" => "center", "2" => "right");
// $echo_read_pw_comment = "$mbbs[mbbs_read_pw_comment]
\n";
$echo_read_pw_comment = <<
$mbbs[mbbs_read_pw_comment]
|
EOT;
}
echo_header();
echo "$header
{$mbbs['mbbs_name']}
$echo_home_url
$ad1
$footer";
exit;
}
}
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 管理モード 削除PW
if($in_del_pw) {
$salt = date('d') + 10;
$mbbs_mbbs_del_pw = crypt($mbbs['mbbs_del_pw'], $salt);
$salt2 = date('d', strtotime('-1 day')) + 10;
$mbbs_mbbs_del_pw2 = crypt($mbbs['mbbs_del_pw'], $salt2);
// フォーム
if(strcmp($mbbs_mbbs_del_pw, $in_del_pw) != 0 && strcmp($mbbs_mbbs_del_pw2, $in_del_pw) != 0 && strcmp($admin_pw_del, $in_del_pw) != 0) {
$err = "";
if($in_del_pw && strcmp($in_del_pw, "chk") != 0) $err = "パスワードが違います。
";
echo "$header
{$mbbs['mbbs_name']}
$footer";
exit;
}
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// function
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 投稿記事の表示方法 キャリア
function echo_many2($mbbs_many2, $bbs_host, $bbs_IP, $bbs_agent) {
global $bbs;
if ($mbbs_many2 == 0) {
$echo_many2 = "";
} elseif ($mbbs_many2 == 1) {
if (eregi("DoCoMo", $bbs_agent) ||
eregi("L-mode", $bbs_agent) ||
eregi("KDDI", $bbs_agent) ||
eregi("UP.Browser", $bbs_agent) ||
eregi("J-PHONE", $bbs_agent) ||
eregi("Vodafone", $bbs_agent) ||
eregi("SoftBank", $bbs_agent) ||
eregi("WILLCOM", $bbs_agent) ||
eregi("DDIPOCKET", $bbs_agent) ||
eregi("PDXGW", $bbs_agent) ||
eregi("ASTEL", $bbs_agent)) { $echo_many2 = "[携帯]"; } else { $echo_many2 = "[PC]"; }
} elseif ($mbbs_many2 == 2) {
if (eregi("DoCoMo", $bbs_agent)) { $echo_many2 = "[docomo]";
} elseif (eregi("KDDI", $bbs_agent) || eregi("UP.Browser", $bbs_agent)) { $echo_many2 = "[au]";
} elseif (eregi("J-PHONE", $bbs_agent) || eregi("Vodafone", $bbs_agent) || eregi("SoftBank", $bbs_agent)) { $echo_many2 = "[softbank]";
} elseif (eregi("WILLCOM", $bbs_agent) || eregi("DDIPOCKET", $bbs_agent) || eregi("PDXGW", $bbs_agent) || eregi("ASTEL", $bbs_agent)) { $echo_many2 = "[phs]";
} else { $echo_many2 = "[PC]"; }
} elseif ($mbbs_many2 == 3) {
if (!$bbs_host) $bbs_host = "$bbs_IP";
// $echo_many2 = "[{$bbs_host}]";
// $echo_many2 = "
host:{$bbs_host}
U-Agent:{$bbs_agent}
";
$echo_many2 = "
\nHOST:$bbs[bbs_new_host]
\nIP:$bbs[bbs_new_IP]
\nU-AGENT:$bbs[bbs_new_agent]
\n個体識別番号:$bbs[bbs_new_keitai_id]";
} elseif ($mbbs_many2 == 4) {
// 携帯かPCか、Oとoで判別
if (eregi("DoCoMo", $bbs_agent) ||
eregi("L-mode", $bbs_agent) ||
eregi("KDDI", $bbs_agent) ||
eregi("UP.Browser", $bbs_agent) ||
eregi("J-PHONE", $bbs_agent) ||
eregi("Vodafone", $bbs_agent) ||
eregi("SoftBank", $bbs_agent) ||
eregi("WILLCOM", $bbs_agent) ||
eregi("DDIPOCKET", $bbs_agent) ||
eregi("PDXGW", $bbs_agent) ||
eregi("ASTEL", $bbs_agent)) { $terminal = "o"; } else { $terminal = "O"; }
// ID文字列 作成
$tripkey = substr($bbs['bbs_new_date'], 8, 2). "-". $bbs_IP;
$salt = substr($tripkey.'HHH',2,2);
$trip = crypt($tripkey,$salt);
$trip = substr($trip,-8);
$trip = $trip. $terminal;
// ID文字列 出力
$echo_many2 = "ID:$trip ";
}
return $echo_many2;
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// オートリンク
function auto_link($str){
global $SCRIPT_NAME, $in_bbs, $in_read_pw, $href;
$str = preg_replace('/([^\"])(https?|ftp)(:\/\/[-_.!~*\'()a-zA-Z0-9;\/\?:\@&=+\$,%#]+)/e', "'$1$2$3'", $str);
$str = preg_replace('/^(https?|ftp)(:\/\/[-_.!~*\'()a-zA-Z0-9;\/\?:\@&=+\$,%#]+)/e', "'$1$2'", $str);
return $str;
// return preg_replace('/([^\"])(https?|ftp)(:\/\/[-_.!~*\'()a-zA-Z0-9;\/?:\@&=+\$,%#]+)/', "$1$2$3", $str);
// return @eregi_replace("(https?|ftp)(://[[:alnum:]\S\+\$\?\.%,!#~*/:;@&=_-]+)", "\\1\\2",$str);
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// YOU TUBE(動画サイト)オートリンク
function function_youtube_link($str){
global $in_bbs, $in_read_pw;
// youtube
$str = preg_replace('/http:\/\/(w?w?w?|j?p?)\.?youtube\.com\/watch\?v=([a-zA-Z0-9_\-]+)(&?[a-zA-Z0-9_\-&=;#!]+)?/', '
', $str) ;
// ニコニコ動画
$str = preg_replace('/http:\/\/(www\.)?nicovideo\.jp\/watch\/([a-zA-Z0-9_]+)(\?[a-zA-Z0-9_&=;]+)?/', '
', $str) ;
// FC2動画
$str = preg_replace('/http:\/\/(w?w?w?\.)?video\.fc2\.com\/content\/([a-z-A-Z0-9%]+\/)?([a-zA-Z0-9_]+)(&?[a-zA-Z0-9_&=;\/]+)?/', '
', $str);
// dailymotion
$str = preg_replace('/http:\/\/(www\.)?dailymotion\.com\/video\/([a-zA-Z0-9\#_-]+)(\?[a-zA-Z0-9_=;]+)?/', '
', $str);
//http://www.xvideos.jp/video3346788/elf_hime_nina_03_hentai#_tabEmbed
//
return $str;
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// レスアンカー
function function_anchor_link($str){
global $in_bbs, $in_read_pw, $bbs_p_id, $in_thread, $bbs, $href;
if ($bbs_p_id) {
return @preg_replace('/(>>|>|>>|>)([0-9]+)/e', "'$0'",$str);
} else {
return @preg_replace('/(>>|>|>>|>)([0-9]+)/e', "'$0'",$str);
}
exit;
}
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 16進数を10進数に 色
function hexdec3($str){
$str = str_split($str, 2);
/*
$val[0] = hexdec($str[0]);
$val[1] = hexdec($str[1]);
$val[2] = hexdec($str[2]);
*/
return hexdec($str['0']) .",". hexdec($str['1']) .",". hexdec($str['2']);
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////// マルチバイト版 chr
function mb_chr($num){
return ($num < 256) ? chr($num) : mb_chr($num / 256).chr($num % 256);
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 投稿フォーム
function form($str){
global $mbbs, $mskin, $in_bbs, $in_bbs_query, $in_act, $in_thread, $in_bbs_id, $bbs, $in_page, $bbs_form_color, $mbbs_many, $keys, $bbs_mbbs_img_max,
$SCRIPT_NAME, $pc_display_0, $pc_display_1, $pc_display_2, $pc_comment_bgcolor_rgba, $co_mottoki_bbs,
$pc_title_bgcolor_rgba,
$in_date_y, $in_date_m, $in_date_d, $in_date_h, $in_date_i,
$date_error, $date_red,
$in_title, $title_error, $title_red, $in_name, $name_error, $name_red, $in_mail, $mail_error, $mail_red,
$in_url, $url_error, $url_red, $in_comment, $comment_error, $comment_red, $in_color,
$img_error,
$in_newthread_pw, $in_newthread_pw_error, $newthread_pw_error, $newthread_pw_red,
$in_res_pw, $res_pw_error, $res_pw_red,
$bbs_spam_error, $bbs_spam_red,
$in_read_pw,
$in_id, $in_ss,
$in_bbs_pw, $bbs_pw_error, $bbs_pw_red,
$href;
// cookie
if (strcmp($in_act, "new_check") != 0 && strcmp($in_act, "res_check") != 0){
list($in_name,$in_mail,$in_url,$in_color,$in_agesage) = explode(",", $co_mottoki_bbs);
}
// 分解
$val_title = explode("<>", $mbbs['mbbs_form_title_method']);// [0]表示名 [1]必須? [2]注意事項
$val_name = explode("<>", $mbbs['mbbs_form_name_method']);// [0]表示名 [1]必須? [2]注意事項
$val_mail = explode("<>", $mbbs['mbbs_form_mail_method']);// [0]表示名 [1]必須? [2]注意事項
$val_url = explode("<>", $mbbs['mbbs_form_url_method']);// [0]表示名 [1]必須? [2]注意事項
$val_comment = explode("<>", $mbbs['mbbs_form_comment_method']);// [0]表示名 [1]必須? [2]注意事項 [3]フォームサイズ横縦
$val_img = explode("<>", $mbbs['mbbs_form_img_method']);// [0]表示名 [1]必須? [2]注意事項 [3]フォームサイズ横縦
$val_pw = explode("<>", $mbbs['mbbs_form_pw_method']);// [0]表示名 [1]必須? [2]注意事項 [3]編集/削除有効期限
$val_spam = explode("<>", $mbbs['mbbs_form_spam_method']);// [0]表示名 [1]必須? [2]注意事項 [3]編集/削除有効期限
$val_submit = explode("<>", $mbbs['mbbs_form_submit_method']);// [0]表示名
// 念のため処理
if (!$val_title['0']) $val_title['0'] = "スレッドタイトル";
if (!$val_name['0']) $val_name['0'] = "ニックネーム";
if (!$val_mail['0']) $val_mail['0'] = "メールアドレス";
if (!$val_url['0']) $val_url['0'] = "URL";
if (!$val_comment['0']) $val_comment['0'] = "メッセージ";
if (!$val_img['0']) $val_img['0'] = "画像";
if (!$val_pw['0']) $val_pw['0'] = "編集/削除パスワード";
if (!$val_spam['0']) $val_spam['0'] = "確認キー";
if (!$val_submit['0']) $val_submit['0'] = "新スレッド作成";
if (!$val_submit['1']) $val_submit['1'] = "返信投稿";
// 編集・削除パスワード 記事の編集フォーム
$echo_bbs_id = ""; $echo_img = ""; $echo_del_img = ""; $echo_del = "";
if ($in_bbs_id) {
$echo_bbs_id = "\n"
."";
$submit = "編集";
// 画像処理
if ($bbs['bbs_img']) {
$echo_img = "
\n";
// 画像削除処理
$echo_del_img = "[{$val_img['0']}削除(確認)]
\n";
}
$echo_del = "[記事削除(確認)]";
}
// フォーム 日時指定(管理モード)
$mktime = mktime($in_date_h, $in_date_i, 0, $in_date_m, $in_date_d, $in_date_y);
if ($in_id && $in_ss && (time() < $mktime || (strcmp($str , "new_check") == 0 && !$in_bbs_id))) {
$echo_form_date = "* 日時指定: | "
."$date_error";
// 年
$date_y = date("Y", time());
$echo_form_date .= "年 \n";
// 月
$echo_form_date .= "月 \n";
// 日
$echo_form_date .= "日 ";
// 時
$echo_form_date .= "時 \n";
// 分
$echo_form_date .= "分"
." \n"
."日時指定投稿をしない場合はすべて「0」のままにしてください。 |
\n";
}
// フォーム スレッドタイトル
$thread = ""; $echo_form_title = ""; $echo_agesage = ""; $echo_newthread_pw = ""; $echo_res_pw = "";
if (strcmp($str, "new_check") == 0) {
$echo_chk = ""; $echo_msg = ""; $echo_form = "";
// [0]表示名 [1]必須? [2]注意事項
if($val_title['2']) $echo_msg = "{$val_title['2']}
";
$echo_form_title = "* {$val_title['0']}: | \n"
."$title_error"
." {$mbbs['mbbs_title_max']}文字以内 "
."$echo_msg |
\n";
if (!$in_bbs_id) $submit = $val_submit['0'];
// スレッド作成パスワード
if ($mbbs['mbbs_newthread']) $echo_newthread_pw = "スレッド作成パスワード: | "
."{$newthread_pw_error} |
";
} elseif (strcmp($str, "res_check") == 0) {
$thread = "";
if (!$in_bbs_id) $submit = $val_submit['1'];
// フォーム agesage
if ($mbbs['mbbs_agesage'] == 2)
$echo_agesage = "投稿後のスレッド位置: | \n"
.""
.""
." |
\n";
// 返信パスワード
if ($mbbs['mbbs_res']) $echo_res_pw = "返信パスワード: | "
."{$res_pw_error} |
";
}
// フォーム 名前
$echo_chk = ""; $echo_msg = ""; $echo_form = "";
// [0]表示名 [1]必須? [2]注意事項
if($val_name[1]) $echo_chk = "* ";
if($val_name[2]) $echo_msg = "$val_name[2]
";
// trip
//if ($mbbs['mbbs_trip']) $echo_trip = "[トリップテスト]";
$echo_form_name = "{$echo_chk}{$val_name[0]}:
| \n"
."$name_error"
." $mbbs[mbbs_name_max]文字以内 "
."$echo_msg |
\n";
// フォーム メールアドレス
$echo_chk = ""; $echo_msg = ""; $echo_form = ""; $echo_form_mail = "";
if ($mbbs['mbbs_form_mail']) {
// [0]表示名 [1]必須? [2]注意事項
// 変更/編集処理フォーム時、メアドフォームTRUEの場合
if ($bbs['bbs_mail']) $val_mail[2] = "セキュリティ確認のため、もう一度入力して下さい。";
//
if($val_mail[1]) $echo_chk = "* ";
if($val_mail[2]) $echo_msg = "$val_mail[2]
";
$echo_form_mail = "{$echo_chk}{$val_mail[0]}: | \n"
."$mail_error"
." "
."$echo_msg* メールアドレスは非表示ですが、迷惑メール等受信する可能性があります。 |
\n";
}
// フォーム URL
$echo_chk = ""; $echo_msg = ""; $echo_form = ""; $echo_form_url = "";
if ($mbbs['mbbs_form_url']) {
// [0]表示名 [1]必須? [2]注意事項
if($val_url[1]) $echo_chk = "* ";
if($val_url[2]) $echo_msg = "$val_url[2]
";
$echo_form_url = "{$echo_chk}{$val_url[0]}: | \n"
."$url_error"
." "
."$echo_msg |
\n";
}
// フォーム comment
$echo_chk = ""; $echo_msg = ""; $echo_form = "";
// [0]表示名 [1]必須? [2]注意事項
if($val_comment[2]) $echo_msg = "$val_comment[2]
";
$echo_form_comment = "* {$val_comment[0]}: | \n"
.""
."[絵文字入力] $comment_error\n"
." "
."$echo_msg |
\n"
."$mbbs[mbbs_comment_max]文字以内 |
\n";
// フォーム 文字色 // $i=0 は 管理者の色 // セレクトボックスと、チェックボックスの切り替えは、$echo_form_color の $echo_form_color_checkbox を $echo_form_color_select に変更する。
if (count($bbs_form_color[$mskin['mbbs_form_comment_color']]) > 2 ) {
if(count($bbs_form_color[$mskin['mbbs_form_comment_color']]) < $in_color + 1) $in_color = 1;
!$in_color && $in_color = 1; //$bbs_form_color[$mskin[mbbs_form_comment_color]][1];
$echo_form_color_select = "";
$echo_form_color = "文字色: | "
."$echo_form_color_checkbox |
";
}
// フォーム 画像
$echo_chk = ""; $echo_msg = ""; $echo_form = ""; $echo_form_img = "";
$bbs_mbbs_img_max = $bbs_mbbs_img_max / 1024;
if ($mbbs['mbbs_form_img']) {
// [0]表示名 [1]必須? [2]注意事項
if($val_img[2]) $echo_msg = "$val_img[2]
";
$echo_form_img = "{$val_img[0]}: | \n"
."$img_error"
."{$echo_img} $bbs_mbbs_img_max kバイト以内 \n"
."$echo_msg |
\n";
}
// 編集・削除パスワード設定時、フォーム表示
$echo_bbs_pw = "";
if ($mbbs['mbbs_form_pw']) {
// [0]表示名 [1]必須? [2]注意事項
if($val_pw[2] && !$in_bbs_id) $echo_msg = "$val_pw[2]
";
$echo_bbs_pw = "* {$val_pw[0]}: | "
."{$bbs_pw_error} 英数字で4文字以上8文字以内 "
."$echo_msg |
";
}
// 数字画像、確認キー mbbs_form_spam
$echo_form_spam = "";
if ($mbbs['mbbs_form_spam'] && !$mbbs['mbbs_read']) {
//
$spam = sprintf("%04d", rand(1, 9999));// パスワードを設定
$spam_angou_header = sprintf("%03d", rand(111, 999));
$spam_angou_footer = sprintf("%03d", rand(1, 999));
//
$spam_f[0] = substr(substr($spam,0,1) + substr($spam_angou_header,0,1), -1, 1);
$spam_f[1] = substr(substr($spam,1,1) + substr($spam_angou_header,0,1), -1, 1);
$spam_f[2] = substr(substr($spam,2,1) + substr($spam_angou_header,0,1), -1, 1);
$spam_f[3] = substr(substr($spam,3,1) + substr($spam_angou_header,0,1), -1, 1);
//
$spam_make_img = $spam_angou_header. $spam_f[0]. $spam_f[1]. $spam_f[2]. $spam_f[3]. $spam_angou_footer;
$hash = md5($spam);// ハッシュを取得
// [0]表示名 [1]必須? [2]注意事項
if($val_spam[2] && !$in_bbs_id) $echo_msg = "$val_spam[2]
";
$echo_form_spam = "* {$val_spam[0]}: | \n"
."{$bbs_spam_error}\n"
." 左の数字を入力してください \n"
."$echo_msg |
\n";
}
// 管理者メッセージ
if ($mbbs['mbbs_form_admin_comment']) {
$mbbs['mbbs_form_admin_comment'] = ereg_replace("\n|\r|\r\n","
", $mbbs['mbbs_form_admin_comment']);
$mbbs['mbbs_form_admin_comment'] = auto_link($mbbs['mbbs_form_admin_comment']);
$mbbs_form_admin_comment_method = array("0" => "left", "1" => "center", "2" => "right");
$echo_form_admin_comment = <<
$mbbs[mbbs_form_admin_comment]
|
EOT;
}
// echo
$echo_form = "\n"
."\n"
."\n"
."\n";
return $echo_form;
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 記事表示
function echo_kiji($bbs) {
global $mbbs, $mskin, $bbs, $in_bbs, $in_bbs_query, $in_act, $thread, $in_thread, $in_page, $bbs_form_color, $mbbs_many, $keys_, $bbs_mbbs_img_max,
$SCRIPT_NAME, $pc_display_0, $pc_display_1, $pc_display_2, $pc_comment_bgcolor_rgba, $co_mottoki_bbs,
$in_title, $title_error, $title_red, $in_name, $name_error, $name_red, $in_mail, $mail_error, $mail_red,
$in_url, $url_error, $url_red, $in_comment, $comment_error, $comment_red,
$in_newthread_pw_error, $newthread_pw_error, $newthread_pw_red,
$in_res_pw, $res_pw_error, $res_pw_red, $in_read_pw, $in_del_pw,
$in_id, $in_ss,
$admin_pw_read, $admin_pw_del,
$href;
if(!$in_page) $in_page = 1;
// 絵文字変換
// エンコード
if ($bbs['bbs_title']) $bbs['bbs_title'] = mb_convert_encoding($bbs['bbs_title'], "SJIS-win", "UTF-8");
if ($bbs['bbs_name']) $bbs['bbs_name'] = mb_convert_encoding($bbs['bbs_name'], "SJIS-win", "UTF-8");
if ($bbs['bbs_comment']) $bbs['bbs_comment'] = mb_convert_encoding($bbs['bbs_comment'], "SJIS-win", "UTF-8");
if(preg_match("/^DoCoMo\/[12]\.0/i", $bbs['bbs_new_agent']) || preg_match("/^PDXGW/i", $bbs['bbs_new_agent']) || preg_match("/(DDIPOCKET|WILLCOM);/i", $bbs['bbs_new_agent'])) { // i-mode WILLCOM
$mpc =& MobilePictogramConverter::factory($bbs['bbs_title'], MPC_FROM_FOMA, MPC_FROM_CHARSET_SJIS);
$bbs['bbs_title'] = $mpc->autoConvert();
$mpc =& MobilePictogramConverter::factory($bbs['bbs_name'], MPC_FROM_FOMA, MPC_FROM_CHARSET_SJIS);
$bbs['bbs_name'] = $mpc->autoConvert();
$mpc =& MobilePictogramConverter::factory($bbs['bbs_comment'], MPC_FROM_FOMA, MPC_FROM_CHARSET_SJIS);
$bbs['bbs_comment'] = $mpc->autoConvert();
} elseif(preg_match("/^(J\-PHONE|Vodafone|MOT\-[CV]980|SoftBank)\//i", $bbs['bbs_new_agent'])) {// softbank
$mpc =& MobilePictogramConverter::factory($bbs['bbs_title'], MPC_FROM_SOFTBANK, MPC_FROM_CHARSET_SJIS);
$bbs['bbs_title'] = $mpc->autoConvert();
$mpc =& MobilePictogramConverter::factory($bbs['bbs_name'], MPC_FROM_SOFTBANK, MPC_FROM_CHARSET_SJIS);
$bbs['bbs_name'] = $mpc->autoConvert();
$mpc =& MobilePictogramConverter::factory($bbs['bbs_comment'], MPC_FROM_SOFTBANK, MPC_FROM_CHARSET_SJIS);
$bbs['bbs_comment'] = $mpc->autoConvert();
} elseif(preg_match("/^KDDI\-/i", $bbs['bbs_new_agent']) || preg_match("/UP\.Browser/i", $bbs['bbs_new_agent'])) {// ezweb
$mpc =& MobilePictogramConverter::factory($bbs['bbs_title'], MPC_FROM_EZWEB, MPC_FROM_CHARSET_SJIS);
$bbs['bbs_title'] = $mpc->autoConvert();
$mpc =& MobilePictogramConverter::factory($bbs['bbs_name'], MPC_FROM_EZWEB, MPC_FROM_CHARSET_SJIS);
$bbs['bbs_name'] = $mpc->autoConvert();
$mpc =& MobilePictogramConverter::factory($bbs['bbs_comment'], MPC_FROM_EZWEB, MPC_FROM_CHARSET_SJIS);
$bbs['bbs_comment'] = $mpc->autoConvert();
} else {
$mpc =& MobilePictogramConverter::factory($bbs['bbs_title'], MPC_FROM_FOMA, MPC_FROM_CHARSET_SJIS);
$bbs['bbs_title'] = $mpc->autoConvert();
$mpc =& MobilePictogramConverter::factory($bbs['bbs_name'], MPC_FROM_FOMA, MPC_FROM_CHARSET_SJIS);
$bbs['bbs_name'] = $mpc->autoConvert();
$mpc =& MobilePictogramConverter::factory($bbs['bbs_comment'], MPC_FROM_FOMA, MPC_FROM_CHARSET_SJIS);
$bbs['bbs_comment'] = $mpc->autoConvert();
}
// エンコード
if ($bbs['bbs_title']) $bbs['bbs_title'] = mb_convert_encoding($bbs['bbs_title'], "UTF-8", "SJIS-win");
if ($bbs['bbs_name']) $bbs['bbs_name'] = mb_convert_encoding($bbs['bbs_name'], "UTF-8", "SJIS-win");
if ($bbs['bbs_comment']) $bbs['bbs_comment'] = mb_convert_encoding($bbs['bbs_comment'], "UTF-8", "SJIS-win");
// メール
if (!$bbs['bbs_name']) $bbs['bbs_name'] = $mbbs_many[0];// 名前が空欄の場合
if ($bbs['bbs_mail']) {
$bbs['bbs_name'] = "$bbs[bbs_name]";
} else {
$bbs['bbs_name'] = "$bbs[bbs_name]";
}
// URL
if($bbs['bbs_url']) $bbs['bbs_url'] = $bbs['bbs_url'] = "[URL]";
// 投稿フォーム 「投稿記事の表示方法」処理
$echo_many2 = echo_many2($mbbs_many[2], $bbs['bbs_new_host'], $bbs['bbs_new_IP'], $bbs['bbs_new_agent']);
// 記事の文字色処理
$bbs['bbs_comment_color'] = $bbs_form_color[$mskin['mbbs_form_comment_color']][$bbs['bbs_comment_color']];
// YOU TUBE(動画サイト)オートリンク
if ($mbbs['mbbs_youtube']) { $bbs['bbs_comment'] = function_youtube_link($bbs['bbs_comment']); }
// 記事に「http://」が含まれていた場合の処理
$bbs['bbs_comment'] = auto_link($bbs['bbs_comment']);
// レスアンカー
$bbs['bbs_comment'] = function_anchor_link($bbs['bbs_comment']);
// 「NEW」記事 処理
$val= explode(" ", $bbs['bbs_new_date']);
$val_date = explode("-", $val[0]); $val_time = explode(":", $val[1]);
$time_new = time() - @mktime($val_time[0], $val_time[1], $val_time[2], $val_date[1], $val_date[2], $val_date[0]); //現在時間から記事投稿時間を引いた値(秒)
if ($time_new > $mbbs['mbbs_new_time']) {$echo_time_new = "";} else {$echo_time_new = "NEW!"; }
// 編集・削除パスワード
// 編集・削除パスワード欄 [0]表示名syring(編集・削除パスワード) [1]NULL [2]注意事項string [3]編集/削除期限
$mbbs_form_pw = explode("<>", $mbbs['mbbs_form_pw_method']);//$mbbs_form_pw[3]
$bbs_new_date = explode(" ", $bbs['bbs_new_date']);//投稿時間
$val_date = explode("-", $bbs_new_date[0]);""; $val_time = explode(":", $bbs_new_date[1]);"";//投稿時間
$time_chk = time() - @mktime($val_time[0], $val_time[1], $val_time[2], $val_date[1], $val_date[2], $val_date[0]);//投稿時間
// echo
$echo_bbs_pw = "";
if ($mbbs['mbbs_form_pw'] && $bbs['bbs_pw'] && $bbs['bbs_active'] == 0 && ($time_chk < $mbbs_form_pw[3] || $mbbs_form_pw[3] == 0)) {
$echo_bbs_pw = " [編集/削除]";
}
// 検索ワードの文字バックグラウンド色を変える
if (strcmp($in_act, "search") ==0) {
for($i = 0; $i < count($keys_); $i++){
$bbs['bbs_name'] = str_replace($keys_[$i],"$keys_[$i]", $bbs['bbs_name']);
$bbs['bbs_comment'] = str_replace($keys_[$i],"$keys_[$i]", $bbs['bbs_comment']);
}
}
// 記事削除処理(管理者)
if (!$in_del_pw && (!$in_id && !$in_ss)) {
if (strcmp($bbs['bbs_active'], '1') == 0) {
if (!$mbbs_many[1]) $mbbs_many[1] ="-管理者により削除-";// 念のため処理
$bbs['bbs_comment'] = $mbbs_many[1];
$bbs['bbs_name'] = "-----";
$bbs['bbs_new_date'] = "-----";
$bbs['bbs_url'] = "";
$bbs['bbs_img'] = "";
$echo_many2 = "";
}
// 記事削除処理(投稿者)
if (strcmp($bbs['bbs_active'], '2') == 0) {
if (!$mbbs_many[3]) $mbbs_many[3] ="-投稿者により削除-";// 念のため処理
$bbs['bbs_comment'] = $mbbs_many[3];
$bbs['bbs_name'] = "-----";
$bbs['bbs_new_date'] = "-----";
$bbs['bbs_url'] = "";
$bbs['bbs_img'] = "";
$echo_many2 = "";
}
}
// 管理削除
$echo_background = "background:#$mskin[mbbs_pc_comment_bgcolor]; background:rgba({$pc_comment_bgcolor_rgba},". $pc_display_2[5]/100 ."); color:#$mskin[mbbs_pc_comment_text];";
if (($mbbs['mbbs_del'] && $in_del_pw) || strcmp($in_del_pw, $admin_pw_del) == 0 || ($in_id && $in_ss)) {
// host
$echo_host = "
\nHOST:$bbs[bbs_new_host]
\nIP:$bbs[bbs_new_IP]
\nU-AGENT:$bbs[bbs_new_agent]
\nmail:$bbs[bbs_mail]
\n個体識別番号:$bbs[bbs_new_keitai_id]";
// 記事
if ($bbs[bbs_active] == 0) {
$echo_checkbox = "選択削除 \n"
."[個別削除]\n";
// 管理者削除記事
} elseif ($bbs[bbs_active] == 1) {
$echo_checkbox = "選択復活 \n"
."[個別復活]\n";
$echo_background = "background:#FFAAAA; color:black;"; $echo_background_end = "";
// 投稿者削除記事
} elseif ($bbs[bbs_active] == 2) {
$echo_checkbox = "投稿者により削除
";
$echo_background = "background:#FF7777; color:black;"; $echo_background_end = "";
}
$echo_checkbox .= "[禁止ホスト]\n"
."[禁止IP]
\n";
}
// 記事表示処理
// 画像ありの記事の場合
if ($bbs['bbs_img']) {
if (strcmp(substr($bbs['bbs_img'], -3), "jpg") == 0 || strcmp(substr($bbs['bbs_img'], -4), "jpeg") == 0) {
// サムネイル画像の有無
if (file_exists("./img/{$in_bbs_query}/s/{$bbs['bbs_img']}")) {//有れば
$echo_img = "./img/{$in_bbs_query}/s/{$bbs['bbs_img']}";
} else {//無ければ
$echo_img = "make_img?bbs=$in_bbs_query&id=$bbs[bbs_id]";
}
} else {
$echo_img = "./img/$in_bbs_query/$bbs[bbs_img]";
}
// 画像の有無
if (!file_exists("./img/$in_bbs_query/$bbs[bbs_img]")) {
$echo_img = "./img/no_image.gif";
}
// 画像のサイズ
$size = @getimagesize("./img/$in_bbs_query/$bbs[bbs_img]");
$echo_kiji = "\n"
."\n"
." {$echo_checkbox}$bbs[bbs_c_id] $bbs[bbs_name] $bbs[bbs_new_date] $bbs[bbs_url] $echo_many2{$echo_bbs_pw} $echo_time_new{$echo_host} \n"
." \n"
." \n"
." \n"
." $size[0] x $size[1]\n"
." | \n"
." \n"
." $bbs[bbs_comment]\n"
." | \n"
."
\n"
." |
\n";
} else { // 画像なしの記事の場合
$echo_kiji = "\n"
." \n"
." \n{$echo_checkbox}$bbs[bbs_c_id] $bbs[bbs_name] $bbs[bbs_new_date] $bbs[bbs_url] $echo_many2{$echo_bbs_pw} $echo_time_new{$echo_host}
\n"
." $bbs[bbs_comment]\n"
." \n"
." |
\n";
} // 記事表示処理
return $echo_kiji;
}
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 管理削除@bbs_delete_comment
if ((($mbbs['mbbs_del'] && $in_del_pw) || strcmp($in_del_pw, $admin_pw_del) == 0 || ($in_id && $in_ss)) && (strcmp($in_act, "bbs_delete_comment") == 0 || strcmp($in_act, "bbs_delete_thread") == 0 )) {
// チェックボックス分解
$chk = 0;
if(!isset($in_del_comment)) error_comment("チェックボックスにチェックを入れて下さい。");
foreach ($in_del_comment as $val) {
$val = seikei($val);
if(!preg_match("/^[0-9]+$/", $val)) error_comment("読み取りエラー。
もう一度アクセスしなおしてください。
お手数をお掛け致します。");
if ($chk == 1) $query_bbs_id .= ",";
$query_bbs_id .= "$val";
$chk = 1;
}
// 記事削除
if (strcmp($in_act, "bbs_delete_comment") == 0) {
// チェックしたレコードを読み込み。bbs_activeの値を調べるため
$query = DB_query("select * from ". TB_BBS . $in_bbs ." where bbs_id in($query_bbs_id);");
// 各レコードupdate
while($bbs = DB_fetch_assoc($query)) {
$p_id = $bbs[bbs_p_id];
//復活?削除?
//削除
if (!$bbs[bbs_active]) {
$bbs_active = 1;
$query_history = "admin_del";
$rename_img = "@{$bbs[bbs_img]}";
rename("{$bbs_dat_img}{$in_bbs}/$bbs[bbs_img]", "{$bbs_dat_img}{$in_bbs}/{$rename_img}");
rename("{$bbs_dat_img}{$in_bbs}/s/$bbs[bbs_img]", "{$bbs_dat_img}{$in_bbs}/s/{$rename_img}");
//復活
} else {
$bbs_active = 0;
$query_history = "admin_revival";
if (strcmp("@", substr($bbs[bbs_img], 0, 1)) == 0) {
$rename_img = substr($bbs[bbs_img], 1);
rename("{$bbs_dat_img}{$in_bbs}/{$bbs[bbs_img]}", "{$bbs_dat_img}{$in_bbs}/{$rename_img}");
rename("{$bbs_dat_img}{$in_bbs}/s/{$bbs[bbs_img]}", "{$bbs_dat_img}{$in_bbs}/s/{$rename_img}");
}
}
// 削除/復活update
if (isset($bbs[bbs_id])) {
DB_query("update ". TB_BBS . $in_bbs ." set bbs_active = '$bbs_active', bbs_img = '$rename_img', "
."bbs_edit_history = '{$query_history}##". date("Y-m-j H:i:s") ."#<>{$bbs[bbs_edit_history]}' where bbs_id = '$bbs[bbs_id]';");
//ファイル名変更
}
}
// 親記事のデータを変更
function_thread_debag_check("$p_id");
}
// スレッド削除
if (strcmp($in_act, "bbs_delete_thread") == 0) {
// チェックしたレコードを読み込み。bbs_active_threadの値を調べるため
$query = DB_query("select * from ". TB_BBS . $in_bbs ." where bbs_p_id in($query_bbs_id) and bbs_c_id = 1;");
// 各レコードupdate
while($bbs = DB_fetch_assoc($query)) {
// 復活?削除?
if (!$bbs[bbs_active_thread]) { $bbs_active_thread = 1; $query_history = "admin_thread_del"; } else { $bbs_active_thread = 0; $query_history = "admin_thread_revival"; }
// 削除/復活
DB_query("update ". TB_BBS . $in_bbs ." set bbs_active_thread = '$bbs_active_thread', "
."bbs_edit_history = '{$query_history}##". date("Y-m-j H:i:s") ."#<>{$bbs[bbs_edit_history]}' where bbs_p_id = '$bbs[bbs_p_id]';");
}
// 親記事のデータを変更
$p_id = $bbs[bbs_p_id];
function_thread_debag_check($p_id);
}
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 管理モード 禁止HOST & 禁止IP
if ($in_id && $in_ss && (strcmp($in_act, "bbs_x_host_kiji_comment") == 0 || strcmp($in_act, "bbs_x_ip_kiji_comment") == 0)) {
$query = DB_query("select * from ". TB_BBS . $in_bbs ." where bbs_id = $in_del_comment;");
$bbs = DB_fetch_assoc($query);
if (substr_count($mbbs[mbbs_x_host], "
") > ($mbbs_x_host_max - 1)) error_comment("禁止ホスト/IPは{$mbbs_x_host_max}個以内でお願いします。");
if (!$bbs[bbs_new_host]) $bbs[bbs_new_host] = $bbs[bbs_new_IP];
if (strcmp($in_act, "bbs_x_ip_kiji_comment") == 0) { $mbbs_x_host = $bbs[bbs_new_IP];
} elseif(strcmp($in_act, "bbs_x_host_kiji_comment") == 0) { $mbbs_x_host = $bbs[bbs_new_host]; }
$x_host = explode("
", $mbbs[mbbs_x_host]); if(in_array($mbbs_x_host, $x_host)) error_comment("すでに禁止ホスト/IPに設定しています。");
if ($mbbs[mbbs_x_host]) $mbbs_x_host = "$mbbs[mbbs_x_host]" . "
$mbbs_x_host";
DB_query("update ". TB_BBS_ADMIN ." set mbbs_x_host = '$mbbs_x_host', mbbs_edit_IP = '$ip', mbbs_edit_host = '$host', mbbs_edit_agent = '$agent', mbbs_edit_date = now() where mbbs_url_id = '$in_bbs';");
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 利用方法
if ($in_act == "howto") {
// 新スレッド作成 返信投稿
$val_submit = explode("<>", $mbbs['mbbs_form_submit_method']);// [0]表示名
if (!$val_submit[0]) $val_submit[0] = "新スレッド作成";// 念のため処理
if (!$val_submit[1]) $val_submit[1] = "返信投稿";// 念のため処理
$echo_new_thread = "[$val_submit[0]]";
// HOME URL
if ($mbbs['mbbs_home_url']) {$echo_home_url = "[HOME]";} else {$echo_home_url = "";}
// 携帯電話閲覧モード確認
if ($mbbs['mbbs_display'] != 2) {$echo_mb_display = "[携帯表示]";} else {$echo_mb_display = "";}
// 分解
$val_title = explode("<>", $mbbs['mbbs_form_title_method']);// [0]表示名 [1]必須? [2]注意事項
$val_name = explode("<>", $mbbs['mbbs_form_name_method']);// [0]表示名 [1]必須? [2]注意事項
$val_mail = explode("<>", $mbbs['mbbs_form_mail_method']);// [0]表示名 [1]必須? [2]注意事項
$val_url = explode("<>", $mbbs['mbbs_form_url_method']);// [0]表示名 [1]必須? [2]注意事項
$val_comment = explode("<>", $mbbs['mbbs_form_comment_method']);// [0]表示名 [1]必須? [2]注意事項 [3]フォームサイズ横縦
$val_img = explode("<>", $mbbs['mbbs_form_img_method']);// [0]表示名 [1]必須? [2]注意事項 [3]フォームサイズ横縦
$val_pw = explode("<>", $mbbs['mbbs_form_pw_method']);// [0]表示名 [1]必須? [2]注意事項 [3]編集/削除有効期限
$val_spam = explode("<>", $mbbs['mbbs_form_spam_method']);// [0]表示名 [1]必須? [2]注意事項 [3]編集/削除有効期限
$val_submit = explode("<>", $mbbs['mbbs_form_submit_method']);// [0]表示名
// 念のため処理
if (!$val_title[0]) $val_title[0] = "スレッドタイトル";
if (!$val_name[0]) $val_name[0] = "ニックネーム";
if (!$val_mail[0]) $val_mail[0] = "メールアドレス";
if (!$val_url[0]) $val_url[0] = "URL";
if (!$val_comment[0]) $val_comment[0] = "メッセージ";
if (!$val_img[0]) $val_img[0] = "画像";
if (!$val_pw[0]) $val_pw[0] = "編集/削除パスワード";
if (!$val_spam[0]) $val_spam[0] = "確認キー";
if (!$val_submit[0]) $val_submit[0] = "新スレッド作成";
if (!$val_submit[1]) $val_submit[1] = "返信投稿";
// youtube
$echo_youtube = "";
if ($mbbs['mbbs_youtube']) { $echo_youtube = "YouTube、ニコニコ動画、FC2動画、などのURLを入力すると、記事に動画を埋め込むことができます。
"; }
echo_header();
echo "
$header
$mbbs[mbbs_name]
\n\n
$ad1
利用方法 |
◆新規スレッド作成
[{$val_submit[0]}]から、各フォームに投稿内容を入力して下さい。
「{$val_submit[0]}」欄は、掲示板閲覧者が一目見てわかるようにお願い致します。
◆{$val_submit[1]}
「{$val_submit[1]}」から、各フォームに投稿内容を入力して下さい。
閲覧しているスレッド(記事)に対して返信が出来ます。
◆トリップ
トリップとは、成りすまし防止機能のひとつです。
「$val_name[0]」フォームに入力する際、「お名前#パスワード」のように、通常の名前を記入したあと、半角「#」を入力、その後に任意の文字列を入力することで、お名前が「お名前◆**********」といった具合に表示されます。
例:「もっとき#pass」と入力すると、お名前は「もっとき◆YnCyaEiXzw」と表示されます。
また、名前部分は省略できます。
例:「#pass」と入力すると、お名前は「◆YnCyaEiXzw」と表示されます。
◆「{$val_comment[0]}」フォーム
投稿内容にタグは使用できませんが、URLは自動的にリンクします。(リンクタグが自動的に追加されます。)
また、「>>1」「>>35」のようにレス番号を指定することでレスアンカーを表示することができます。
$echo_youtube
◆ルール
返信はひとつのスレッドにつき、{$mbbs['mbbs_log_thread_max']}記事までです。
次のような投稿はしないで下さい。
・法律に違反する可能性がある画像。
・他人の肖像権/著作権などを害する画像。
・個人のプライバシーが侵害される画像・データ。
・宣伝、未承認広告メール。
・公序良俗に反する画像を投稿された場合は今後のご利用をお断りする場合があります。
誹謗、中傷、煽り、罵倒行為等は削除対象になります。これらに該当する記事はこちらで削除しますので放置して下さい。
管理者が著しく不利益と判断する記事や、他人を誹謗中傷する記事は予告なく削除することがあります。
|
$footer
";
exit;
/*
古い記事はサーバー負担を軽減するため、順に消されていきます。
保持件数は親記事、返信記事を含めて{$max_bbs_log}です。
*/
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 検索
if ($in_act == "search") {
$in_word = (isset($in_word)) ? $in_word : null;
// メニュー
// HOME URL
if ($mbbs['mbbs_home_url']) {$echo_home_url = "[HOME]";} else {$echo_home_url = "";}
// 携帯電話閲覧モード確認
if ($mbbs['mbbs_display'] != 2) {$echo_mb_display = "[携帯表示]";} else {$echo_mb_display = "";}
$echo_menu = "\n\n";
// 検索処理
$echo_comment = "";
if($in_word){
// ユーザー全検索ワード データベース登録
if (strpos($_SERVER[HTTP_USER_AGENT], 'Googlebot') === false
&& strpos($_SERVER[HTTP_USER_AGENT], 'bingbot') === false
&& strpos($_SERVER[HTTP_USER_AGENT], 'ezooms.bot') === false
&& strpos($_SERVER[HTTP_USER_AGENT], 'AhrefsBot') === false
&& strpos($_SERVER[HTTP_USER_AGENT], 'search') === false) {
// データベース記録
$host = gethostbyaddr(getenv("REMOTE_ADDR"));
$referer = urlencode($_SERVER['HTTP_REFERER']); // URL エンコード %56%46
DB_query("insert into `bbs`.`___@search@___` (bbs_url, bbs_search, bbs_new_IP, bbs_new_host, bbs_new_agent, bbs_new_refere, bbs_new_date) "
."values('$in_bbs', '$in_word', '$_SERVER[REMOTE_ADDR]', '$host', '$_SERVER[HTTP_USER_AGENT]', '$referer', now())");
}// ユーザー全検索ワード データベース登録end
// キーワード分解
$keys = preg_split("/( | )+/", $in_word);//検索の複数語を配列に
// $keys = preg_split("/( | )+/", addslashes($in_word));//検索の複数語を配列に バックスラッシュ補完
$keys_ = preg_split("/( | )+/", $in_word);
$query_keyword = "";
$str = array("bbs_title", "bbs_name", "bbs_comment");
//
for($i = 0; $i < count($str); $i++){
//
if ($i == 0) { $query_keyword .= " ("; } else { $query_keyword .= " or ("; }
//
for($j = 0; $j < count($keys); $j++){
if(!$keys[$j]) continue;//空はバス
if ($j != 0) {
if (strcmp($in_andor, "and") == 0) {
$query_keyword .= " and ";
} else {
$query_keyword .= " or ";
}
}
//
$query_keyword .= "`$str[$i]` like '%$keys[$j]%'";
}
//
$query_keyword .= ")";
}
// 全件数を求める
$query_count = DB_query("select count(bbs_id) from ". TB_BBS . $in_bbs_query ." where ($query_keyword) and bbs_active = 0 and bbs_active_thread = 0 and bbs_new_date <= now();");
$count = DB_fetch_array($query_count); // 記事数 count $count[0]
// 表示処理
$echo_comment = "検索結果 {$count[0]}件
";
$query = DB_query("select * from ". TB_BBS . $in_bbs_query ." where ($query_keyword) and bbs_active = 0 and bbs_active_thread = 0 and bbs_new_date <= now() order by bbs_id desc;");
while ($bbs = DB_fetch_assoc($query)) {
// $echo_kiji = echo_kiji($bbs);
// 記事タイトル表示処理
$query_title = DB_query("select bbs_title from ". TB_BBS . $in_bbs_query ." where bbs_p_id = $bbs[bbs_p_id] and bbs_c_id = 1;");
$bbs_title = DB_fetch_assoc($query_title);
for($i = 0; $i < count($keys); $i++)
$bbs_title[bbs_title] = str_replace($keys_[$i],"$keys_[$i]", $bbs_title[bbs_title]);
// 記事表示
$echo_comment .= "\n"
."\n"
."\n"
." \n"
." $bbs_title[bbs_title]\n"
." \n"
." \n"
." [この記事のスレッドを表示する]\n"
." \n"
." \n"
." |
\n";
$echo_comment .= echo_kiji($bbs) ."
";
}//表示処理end
}//$in_wird end
echo_header();
echo "
$header
$mbbs[mbbs_name]
$echo_menu
$ad1
$echo_comment
$footer
";
/*
旧検索スクリプト
$in_word = (isset($in_word)) ? $in_word : null;
// メニュー
// HOME URL
if ($mbbs['mbbs_home_url']) {$echo_home_url = "[HOME]";} else {$echo_home_url = "";}
// 携帯電話閲覧モード確認
if ($mbbs['mbbs_display'] != 2) {$echo_mb_display = "[携帯表示]";} else {$echo_mb_display = "";}
$echo_menu = "\n\n";
// 検索処理
$echo_comment = "";
if($in_word){
//
if (strpos($_SERVER[HTTP_USER_AGENT], 'Googlebot') === false
&& strpos($_SERVER[HTTP_USER_AGENT], 'bingbot') === false
&& strpos($_SERVER[HTTP_USER_AGENT], 'ezooms.bot') === false
&& strpos($_SERVER[HTTP_USER_AGENT], 'AhrefsBot') === false
&& strpos($_SERVER[HTTP_USER_AGENT], 'search') === false) {
// データベース記録
$host = gethostbyaddr(getenv("REMOTE_ADDR"));
$referer = urlencode($_SERVER['HTTP_REFERER']); // URL エンコード %56%46
DB_query("insert into `bbs`.`___@search@___` (bbs_url, bbs_search, bbs_new_IP, bbs_new_host, bbs_new_agent, bbs_new_refere, bbs_new_date) "
."values('$in_bbs', '$in_word', '$_SERVER[REMOTE_ADDR]', '$host', '$_SERVER[HTTP_USER_AGENT]', '$referer', now())");
}
// $keys = preg_split("/( | )+/", $in_word);//検索の複数語を配列に
$keys = preg_split("/( | )+/", addslashes($in_word));//検索の複数語を配列に バックスラッシュ補完
$keys_ = preg_split("/( | )+/", $in_word);
$query = DB_query("select bbs_id, bbs_title, bbs_name, bbs_comment from ". TB_BBS . $in_bbs_query ." where bbs_active = 0 and bbs_new_date <= now();");
while($chk = DB_fetch_assoc($query)){//ログを走査
$find = 0;//フラグ
$line = "$chk[bbs_title], $chk[bbs_name], $chk[bbs_comment]";
for($i = 0; $i < count($keys); $i++){
if($keys[$i]=="") continue; //空はバス
if(mb_eregi($keys[$i], $line)) {//一致の場合
$find = 1;
} elseif(strcmp($in_andor, "and") == 0) { $find = 0; break; } //ANDの場合マッチしないなら次のログへ
}
if($find) $find_id[] = "$chk[bbs_id]";
}
//結果処理
$find_id = @array_unique($find_id);//重複データをまとめる
while($val = @each($find_id)) $query_p_id .= "$val[1],";//query用に、bbs_idを整形
if(strlen($find_id) == 0) unset($find_id);// 一致しなければ変数初期化
$query_p_id = substr($query_p_id, 0, (strlen($query_p_id) - 1));//最後のコンマを消す
// 表示処理
$echo_comment = "検索結果 ". count($find_id) ."件
";
$query = DB_query("select * from ". TB_BBS . $in_bbs_query ." where bbs_id in({$query_p_id});");
while ($bbs = DB_fetch_assoc($query)) {
// $echo_kiji = echo_kiji($bbs);
// 記事タイトル表示処理
$query_title = DB_query("select bbs_title from ". TB_BBS . $in_bbs_query ." where bbs_p_id = $bbs[bbs_p_id] and bbs_c_id = 1;");
$bbs_title = DB_fetch_assoc($query_title);
for($i = 0; $i < count($keys); $i++)
$bbs_title[bbs_title] = str_replace($keys_[$i],"$keys_[$i]", $bbs_title[bbs_title]);
// 記事表示
$echo_comment .= "\n"
."\n"
."\n"
." \n"
." $bbs_title[bbs_title]\n"
." \n"
." \n"
." [この記事のスレッドを表示する]\n"
." \n"
." \n"
." |
\n";
$echo_comment .= echo_kiji($bbs) ."
";
}//表示処理end
}//$in_wird end
echo_header();
echo "
$header
$mbbs[mbbs_name]
$echo_menu
$ad1
$echo_comment
$footer
";
*/
/*
// mysql で検索の場合。。。or検索限定
$keys = preg_split("/( | )+/", $in_word);//検索の複数語を配列に
$find_count = 0;
for($i = 0; $i < count($keys); $i++){
$find_chk = 0;
$query = DB_query("select bbs_id, bbs_title, bbs_name, bbs_comment from ". TB_BBS . $in_bbs ." where bbs_active = 0 and (bbs_title like '%$keys[$i]%' or bbs_name like '%$keys[$i]%' or bbs_comment like '%$keys[$i]%') order by bbs_agesage desc, bbs_p_id desc;");
while($chk = DB_fetch_assoc($query)) {
$find_chk = 1;
if(strcmp($in_andor, "and") == 0) {//ANDの場合マッチしないなら次のログへ
}
}
if($find_chk) $find_id[] = $chk[bbs_id];//検索一致
//結果処理
$find_id = @array_unique($find_id);//重複データをまとめる
while($val = @each($find_id)) $query_p_id .= "$val[1],";//query用に、bbs_idを整形
$query_p_id = substr($query_p_id, 0, (strlen($query_p_id) - 1));//最後のコンマを消す
*/
exit;
}
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// アルバム画像 (画像一覧)
if (strcmp($in_act, "album") == 0) {
// 画像表示数 / 1ページ
$display_img = 20;
// 広告を、画像広告onlyに。
if (!mb_eregi("Sleipnir", $_SERVER[HTTP_USER_AGENT]) && !$mbbs['mbbs_18x']) $ad1 = $ad2;
// メニュー
// HOME URL
if ($mbbs['mbbs_home_url']) {$echo_home_url = "[HOME]";} else {$echo_home_url = "";}
// 携帯電話閲覧モード確認
if ($mbbs['mbbs_display'] != 2) {$echo_mb_display = "[携帯表示]";} else {$echo_mb_display = "";}
// 画像
$val_img = explode("<>", $mbbs['mbbs_form_img_method']);// [0]表示名 [1]必須? [2]注意事項 [3]フォームサイズ横縦
if (!$val_img[0]) $val_img[0] = "画像";// 念のため処理
$echo_menu = "\n"
."\n"
." [掲示板TOP]\n"
."[{$val_img[0]}一覧]\n"
." [ワード検索]\n"
." [利用方法]\n"
."$echo_mb_display\n"
."{$echo_home_url}\n"
." \n |
\n\n";
// count数を求める
//$in_act = (isset($in_act)) ? $in_act : null;
//echo isset($in_thread)."
";
$query_thread = ($in_thread) ? " and bbs_p_id = $in_thread" : ""; // 個別のスレッド画像一覧の場合
//if ($in_thread) $query_thread = " and bbs_p_id = $in_thread"; // 個別のスレッド画像一覧の場合
if ($mbbs['mbbs_img_count_active'] && !$in_thread) {
$count[0] = $mbbs['mbbs_img_count_active']; // $count[0]
} else {
$query = DB_query("select count(*) from ". TB_BBS . $in_bbs_query ." where (bbs_img != '' or bbs_img is null) and bbs_active = 0 and bbs_active_thread = 0 and bbs_new_date <= now(){$query_thread};");
$count = DB_fetch_array($query); // $count[0]
}
// ページ処理
//!$in_page_album && $in_page_album = 1;
$in_page_album = (isset($in_page_album)) ? $in_page_album : 1; // 個別のスレッド画像一覧の場合
$page = $in_page_album * $display_img - $display_img;
// ページ表示処理
$echo_page = "";
if ($display_img < $count[0]) {
$page_previous = $in_page_album - 1; //前へ
$page_next = $in_page_album + 1; //次へ
if ($page_previous < 0) $in_page_album = 0; //$in_page_albumを「マイナス」にしない
$echo_page = "\n"
."\n"
."({$count[0]}画像) ";
if ($in_page_album != 1) $echo_page .= " <<始ページ ";
if ($in_page_album > 1) $echo_page .= " < 前ページ ";
if($in_page_album < ceil($count[0] / $display_img)) $echo_page .= " 次のページ> ";
if ($in_page_album != ceil(($count[0] - 1) / $display_img)) $echo_page .= " 終ページ>> ";
$echo_page .= " page ";
// ページ数リンク処理
if($in_page_album < 11) {
$page_link_start = 1;
if (ceil(($count[0] - 1) / $display_img) < 20) { $page_link_end = ceil(($count[0] - 1) / $display_img); } else { $page_link_end = 20; }
} elseif ($in_page_album > ceil(($count[0] - 1) / $display_img) - 10) {
$page_link_start = ceil(($count[0] - 1) / $display_img) - 20;
if ($page_link_start < 1) $page_link_start = 1;
$page_link_end = ceil(($count[0] - 1) / $display_img);
} else {
$page_link_start = $in_page_album - 10;
$page_link_end = $in_page_album + 10;
}
for ($i=$page_link_start ; $i <= $page_link_end ; $i++) {
if ($i != $in_page_album) {
$echo_page .= " $i \n";
} else {
$echo_page .= "$i ";
}
}
$echo_page .= " \n |
\n";
}// ページ表示処理end
// アルバムecho処理
if ($in_thread) $query_thread = " and bbs_p_id = $in_thread"; // 個別のスレッド画像の場合
//echo"select * from ". TB_BBS . $in_bbs_query ." where bbs_img != '' and bbs_active = 0 and bbs_active_thread = 0 and bbs_new_date <= now(){$query_thread} order by bbs_id desc limit $page, $display_img;
";
$query = DB_query("select * from ". TB_BBS . $in_bbs_query ." where bbs_img != '' and bbs_active = 0 and bbs_active_thread = 0 and bbs_new_date <= now(){$query_thread} order by bbs_img desc limit $page, $display_img;");
$i = 4; $echo = "";
while($bbs = DB_fetch_assoc($query)) {
$i++;
if(($i % 5) === 0) {$echo .="";}
if (strcmp(substr($bbs['bbs_img'], -3), "jpg") == 0 || strcmp(substr($bbs['bbs_img'], -4), "jpeg") == 0) {
// $echo_img = "make_img?bbs=$in_bbs_query&id=$bbs[bbs_id]";// 外部phpにてイメージ生成
// サムネイル画像の有無
if (file_exists("./img/{$in_bbs_query}/s/{$bbs['bbs_img']}")) {//有れば
$echo_img = "./img/{$in_bbs_query}/s/{$bbs['bbs_img']}";
} else {//無ければ
$echo_img = "make_img?bbs=$in_bbs_query&id=$bbs[bbs_id]";
}
} else {
$echo_img = "./img/$in_bbs_query/$bbs[bbs_img]";
}
// 画像の有無
if (!file_exists("./img/$in_bbs_query/$bbs[bbs_img]")) {
$echo_img = "./img/no_image.gif";
}
// echo "," ", $bbs['bbs_comment']);
$bbs_comment = mb_substr($bbs_comment, 0, 32);
$echo .=" | ";
/*
if (strcmp(substr($bbs[bbs_img], -3), "jpg") == 0 || strcmp(substr($bbs[bbs_img], -4), "jpeg") == 0) {
// NO IMAGE 画像をひょうじ
if (!file_exists("./img/$in_bbs_query/$bbs[bbs_img]")) {
$echo_img = "./img/no_image.gif";
} else {
$echo_img = "make_img?bbs=$in_bbs_query&id=$bbs[bbs_id]"; //echo "./img/$in_bbs_query/$bbs[bbs_img] $i
";
}
// echo ";
} else {
$echo .=" | ";
}
*/
//
if ((($i + 1) % 5) === 0) {$echo .="\n";}
}
// スレッド画像一覧の場合
$echo_thread_title = ""; $echo_album_link = "";
if ($in_thread) {
// タイトル
$query = DB_query("select * from ". TB_BBS . $in_bbs_query ." where bbs_p_id = $in_thread and bbs_c_id = 1;");
$bbs = DB_fetch_assoc($query);
$echo_thread_title = ""
."$bbs[bbs_title]
";
// 画像一覧リンク
$echo_album_link = "";
}
//
echo_header();
echo <<
$mbbs_name
$emoji_popup
$mbbs[mbbs_name]
$echo_menu
$echo_thread_title
$ad1
$echo_page
$echo_album_link
$ad2
$echo_page
$footer
EOT;
exit;
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////別窓 画像
if (strcmp($in_act, "img") == 0) {
// 広告
// 一般掲示板の場合
if (!$mbbs['mbbs_18x']) {
$ad1 = <<
|
$ad1_onegai
EOT;
// 18禁止広告の場合
} else {
/*
$ad1 = <<
|
$ad1_onegai
EOT;
*/
}// 18禁止広告の場合end
// 振り分け
// $in_img が、○○○.jpgの時
if (preg_match("/.jpg/", $in_img)) {
$size = @getimagesize("./img/$in_bbs/$in_img");
$echo_img = "./img/$in_bbs_query/$in_img";
/*
if (strcmp($in_button, "拡大") == 0) {
list($width,$height)=getimagesize("./img/$in_bbs/$in_img");
$src=imagecreatefromjpeg("./img/$in_bbs/$in_img");
$in_width = ceil($in_width*1.2);
$in_height = ceil($in_height*1.2);
$dst=imagecreatetruecolor($in_width,$in_height);
ImageCopyResampled($dst,$src,0,0,0,0,$in_width,$in_height,$size[0],$size[1]);
header("Content-type: image/jpeg");
imageJPEG($dst, "./img/$in_bbs/___zzz___.jpg");
$echo_img = "./img/$in_bbs/___zzz___.jpg";
$size
//imagejpeg($dst);
}
*/
echo <<
$mbbs_name
$ad1
|
$size[0] x $size[1]
|
(c)Copyright mottoki.com 2007- All rights reserved.
|
EOT;
// $in_img が、bbs_idの時
} else {
// 画像
$val_img = explode("<>", $mbbs['mbbs_form_img_method']);// [0]表示名 [1]必須? [2]注意事項 [3]フォームサイズ横縦
if (!$val_img[0]) $val_img[0] = "画像";// 念のため処理
// 画像一覧リンク
if ($mbbs['mbbs_form_img']) $echo_album .= "[{$val_img[0]}一覧] ";
// データベース接続
$query = DB_query("select * from ". TB_BBS . $in_bbs_query ." where bbs_id = $in_img and bbs_active = 0 and bbs_active_thread = 0 and bbs_new_date <= now();");
$bbs = DB_fetch_assoc($query);
// 画像閲覧回数 update
DB_query("update ". TB_BBS . $in_bbs_query ." set bbs_display_img_count = bbs_display_img_count + 1 where bbs_id = $in_img;");
// 画像の有無
if (!file_exists("./img/$in_bbs_query/$bbs[bbs_img]")) {
$echo_img = "./img/no_image.gif";
} else {
$echo_img = "./img/$in_bbs_query/$bbs[bbs_img]";
//$echo_img = "make_img?bbs=$in_bbs_query&id=$bbs[bbs_id]&display=1";
$size = @getimagesize($echo_img);
$echo_size = "$size[0] x $size[1]
";
}
// echo "," ", $bbs['bbs_comment']);
$bbs_comment = mb_substr($bbs_comment, 0, 32);
// [前の画像]の有無
$echo_next = "";
if ($bbs['bbs_c_id'] > 1) {
$query = DB_query("select bbs_id from ". TB_BBS . $in_bbs_query ." where bbs_p_id = $bbs[bbs_p_id] and bbs_c_id < $bbs[bbs_c_id] and bbs_img != '' and bbs_active = 0 and bbs_active_thread = 0 and bbs_new_date <= now() order by bbs_c_id desc limit 0, 1;");
$bbs_previous = DB_fetch_assoc($query);//$bbs_previous[bbs_id]
if ($bbs_previous['bbs_id']) $echo_next = " [←前の画像] ";
}
// [次の画像]の有無
$query = DB_query("select bbs_id from ". TB_BBS . $in_bbs_query ." where bbs_p_id = $bbs[bbs_p_id] and bbs_c_id > $bbs[bbs_c_id] and bbs_img != '' and bbs_active = 0 and bbs_active_thread = 0 and bbs_new_date <= now() order by bbs_c_id asc limit 0, 1;");
$bbs_next = DB_fetch_assoc($query);//$bbs_next[bbs_id]
if ($bbs_next['bbs_id']) $echo_next .= " [次の画像→] ";
if ($echo_next) $echo_next .= "
";
$background = " background:#$mskin[mbbs_pc_comment_bgcolor]; background:rgba({$pc_comment_bgcolor_rgba},". $pc_display_2[5]/100 ."); color:#$mskin[mbbs_pc_comment_text];";
$background = " background:#$mskin[mbbs_pc_comment_bgcolor]; color:#$mskin[mbbs_pc_comment_text];";
echo <<
$mbbs_name
EOT;
/*
echo <<
$mbbs_name