Ziyaretçi Defteri Yönetici Giriş

Yönetici Parolası:
"; break; case "login2": // YÖNETİCİ GİRİŞ // ADMiN LOGiN ******************************** if ($pass == $admin_pwd){ $_SESSION['reg_pwd'] = $admin_pwd; header("Location: $scradr"); } else{ pheader("Yönetici Giriş kontrol"); echo "

Ziyaretçi Defteri Yönetici Giriş Kontrol

Parola geçersiz. Giriş yapılmadı.

Geri Dön Mesajlar"; } break; case "logout": // Yönetici Çıkış // Admin Logout ******************************* unset($_SESSION['reg_pwd']); pheader("Yönetici Çıkış"); echo "Yönetici çıkışı yapıldı
"; echo "Mesajlar"; break; case "form": // Mesaj Gönder Form // Send a message form *********************** pheader("Yeni Mesaj Gönder"); $time = mktime(); $tf = $time - $_SESSION['reg_stime']; if ($tf > $wait_time){ $data = join('',file("frm.htm")); // mesajlar kontrol edilecekse if ($msgcnt !=0){$data .= "Mesajınız incelendikten sonra yayınlanacaktır !";} $trtable = array( "#BASLIK#" => "Mesaj Gönder", "" => "", "#YER#" => "", "#ADI#" => "", "#EMAIL#" => "", "#WEB#" => "http://", "#MESAJ#" => "", "#ACT#" => "post"); echo (strtr($data,$trtable));} else{ $tf = $wait_time - $tf; echo "Üzgünüm Yeni bir mesaj göndermek için $tf saniye beklemelisiniz"; echo "
Mesajlar"; } break; case "edit": // Düzenle Form // Edit message Form ****************************** if ($admin){ pheader("Mesaj Değiştir/Sil"); $data = file($data_file); $data = array_reverse ($data); list($time,$check,$ra,$name,$email,$yer,$web,$mesaj) = split("\|\|",$data[$mno]); $data2 = join('',file("frm.htm")); $data2 = ereg_replace("#pheader#","Mesajı Düzenle: Değiştir/Sil",$data2); $frm_ek = ""; $frm_ek .= ""; $frm_ek .= ""; $frm_ek .= ""; $frm_ek .= "Mesajı Sil"; $mesaj = ereg_replace("
","\n",$mesaj); $trtable = array( "" => $frm_ek, "#BASLIK#" => "Mesaj Değiştir/Sil", "#ADI#" => $name, "#EMAIL#" => $email, "#WEB#" => $web, "#YER#" => $yer, "#MESAJ#" => $mesaj, "#ACT#" => "post2"); echo (strtr($data2,$trtable)); } else{header ("Location: $scradr?action=login");} // login sayfasını git break; case "post": // Gönder - Kaydet // Message Send - Save ************************* if (strlen($mesaj)<7){ pheader("Hata: Mesaj kısa"); echo "Mesajınız çok kısa. Yeniden deneyiniz."; } else{ $time = mktime(); $name = strip_tags($name); $name = ereg_replace("\|","",$name); $web = strip_tags($web); $web = ereg_replace("\|","",$web); if (strlen($name) > 25){$name=substr($name,0,25);} if (!(isemail($email))){$email='';} if (!(isweb($web))){$web='';} $mesaj = stripslashes($mesaj); $mesaj = ereg_replace("\|\|","||",$mesaj); $mesaj = ereg_replace("\r","",$mesaj); $mesaj = ereg_replace("(\n)+","\n",$mesaj); $mail_mesaj = $mesaj; // emaille gönderilecek mesaj $mesaj = ereg_replace("\n","
",$mesaj); $data = fopen($data_file, "a"); flock($data,2); $check=0; // mesajlar hemen yayınlanacaksa onaylı kaydet if ($msgcnt==0){$check=1;} // Kullanıcı ip ini al $ip = userip(); fwrite($data, "$time||$check||$ip||$name||$email||$yer||$web||$mesaj||\n"); flock($data,3); fclose($data); // yöneticiye mesaj emaille gönderilecekse if (($sendmsg2me == 1) and ($admin_email)){ $time = date($tformat,($sf*60+$time)); $mail_mesaj .="\n\n--\nIP:$ip\nTARİH:$time\n$scradr\n"; mail($admin_email, "$pname ZD yeni mesaj $name", $mail_mesaj, "From: $name <$email>\r\n" ."Reply-To: $name <$email>\r\n" ."X-Mailer: PHP/" . phpversion()); } $_SESSION['reg_stime'] = $time; header("Location: $scradr"); } break; case "post2": // Değiştir/Sil & Kaydet // Edit-Delete- Save ******************** if ($admin){ $data = file($data_file); $data = array_reverse ($data); // tüm mesajları sil işaretli ise dosyayı sil if ($sil=="YES"){unset ($data[$mno]);} else{ $name = strip_tags($name); $name = ereg_replace("\|","",$name); $web = strip_tags($web); $web = ereg_replace("\|","",$web); if (strlen($name) > 25){$name=substr($name,0,25);} if (!(isemail($email))){$email='';} if (!(isweb($web))){$web='';} $mesaj = stripslashes($mesaj); $mesaj = ereg_replace("\|\|","||",$mesaj); $mesaj = ereg_replace("\r","",$mesaj); $mesaj = ereg_replace("(\n)+","\n",$mesaj); $mesaj = ereg_replace("\n","
",$mesaj); $data[$mno] = "$time||$check||$ra||$name||$email||$yer||$web||$mesaj||\n"; } $data = array_reverse ($data); $data = join('',$data); $data = ereg_replace("(\r)+","",$data); $dp = fopen($data_file, "w"); flock($data,2); fwrite($dp,$data); flock($data,3); fclose($dp); // mesaj silinmek istendiyse if ($sil=="YES"){header("Location: $scradr?pno=$pno");} else{ header("Location: $scradr"); } } else{header ("Location: $scradr?action=login");} break; case "onay": // Bekleyen Mesajı onayla if ($admin){ $data = file($data_file); $data = array_reverse ($data); list($time,$check,$ra,$name,$email,$yer,$web,$mesaj) = split("\|\|",$data[$mno]); $data[$mno] = "$time||1||$ra||$name||$email||$yer||$web||$mesaj||\n"; $data = array_reverse ($data); $data = join('',$data); $data = ereg_replace("(\r)+","",$data); $dp = fopen($data_file, "w"); flock($data,2); fwrite($dp,$data); flock($data,3); fclose($dp); header("Location: $scradr"); } else{header ("Location: $scradr?action=login");} break; /////////////////////////////////////////////////////////////// case "ayar": // Ayarlar Sayfası if ($admin){ pheader ("Ziyaretçi Defteri Ayarları"); header("Cache-Control: no-cache, must-revalidate"); echo "

$pname Ziyaretçi Defteri Ayarları

"; // config.php dosyası varlığı ve yazma özelliği kontrolü if (file_exists("config.php")){ echo "config.php dosyasına yazma özelliği: "; if (is_writable("config.php")){echo "AÇIK

";} else { echo "KAPALI
"; echo "Bu yüzden ayarları kaydedemeyeceksiniz.
Dosyaya yazma özelliği atayınız."; $err=1; } } else{echo "config.php dosyası: YOK
Dosyayı oluşturunuz";$err=1;} if ($err==0){ include ("setfrm.htm");} } else{header ("Location: $scradr?action=login");} break; case "ayarkaydet": // Ayarları kaydet if ($admin){ if ($admin_pwd1 != $admin_pwd2){ pheader("Hata !"); echo "

HATA

Parolalar eşit değil !
Geri Dön "; break; } $data = "$deger ) { $data .= "$"."$anahtar = \"$deger\" ;\n"; } $data .= '?'.">\n"; $dp = fopen("config.php", "w"); flock($data,2); fwrite($dp,$data); flock($data,3); fclose($dp); pheader("İşlem Tamam"); echo "İşlem Tamam.
"; echo "Mesajlar"; } else{header ("Location: $scradr?action=login");} break; default: // Mesajları listele // List Messages ///////////////////// if ($setok != 1){// congfig.php de setok = 1 yoksa // yönetici girişi yapıldı ise ayarlar sayfasına if ($admin){header("Location: $scradr?action=ayar"); } pheader("Kurulum"); echo "

TasarimAjans Ziyaretci Defteri Kurulumu

"; $err=0; // Data dosyası varlığı ve yazma özelliği kontrolü if (file_exists($data_file)){ echo "$data_file dosyasına yazma özelliği: "; if (is_writable($data_file)){echo "AÇIK

";} else {echo "KAPALI
Dosyaya yazma özelliği atayınız. Mesajların kaydedilmesi için bu gerekli.
";$err=1;} } else{echo "$data_file dosyası: YOK
Dosyayı oluşturunuz";$err=1;} // Dosyada sorun yoksa if ($err == 0){ // Kuruluma devam et echo "Yönetici girişi yapıp Ziyaretçi defteri ayarlarını düzenleyiniz.

İlk kurulum yönetici parolası admin 'dir.
Parolayı değiştirmeyi unutmayınız."; include ("readme_TR.htm"); echo "Devam"; } // Dosyalarda sorun varsa. Kuruluma devam etme else{echo "

Kurulum devam edemiyor !";} exit; } /// Config.php de setok=1 ayarlı. Ayarlama yapılmış ise //////////////////////////////////// pheader("Ziyaretçi Defteri Mesajları"); echo "

$pname Ziyaretçi defteri Mesajları

"; // dosya varsa verileri al if (file_exists($data_file)){$data = file($data_file);$msg_count = count($data);} else{$msg_count = 0;} // sayfa no yoksa 0 kabul et if(!$pno){$pno=0;} // sayfa no 0 ise önceki linki pasif if($pno==0){$links = "« Önceki";} else{$gcc = $pno -1; $links .= "« Önceki";} $gcc = $pno * $mpp + $mpp; // Son sayfada ise sonraki linki pasif if ($msg_count > $gcc){ $gcc = $pno + 1; $links .= "Sonraki »"; } else {$links .= "Sonraki »";} $links .= "Mesaj Gönder"; // admin ise ayarlar linki ekle if ($admin) {$links .="
Ayarlar";} else {$links .= "Ana Sayfa";} $links .= "Yönetici $admin_msg"; $links .= "
Toplam : $msg_count mesaj"; // Sayfalar linklerini hazırla $sayfasayisi = $msg_count/$mpp; $sayfalarlink = "
Sayfalar : "; for ($sn=0;$sn<$sayfasayisi;$sn++){ $linksn=$sn+1; if ($sn == $pno){$sayfalarlink .= "$linksn";} else{$sayfalarlink .= "$linksn";} } // ~~~~~~~~~~~~~~ $links .=$sayfalarlink; echo "$links
"; if ($msg_count){ // mesaj varsa $data = array_reverse ($data); $first_m = $pno * $mpp; $last_m = $first_m + $mpp; if ($last_m > $msg_count){$last_m=$msg_count;} $skinf =join('',file($skin.".htm")); //skin dosya içeriği al // ilk ve son mesajlar for ($lno=$first_m; $lno<$last_m; $lno++){ $temp = $skinf; list($time,$check,$ip,$name,$email,$yer,$web,$mesaj) = split("\|\|",$data[$lno]); // admin değil ve mesaj onaysız ve mesaj gösterilmesin ayarlı ise // mesajı göstermeden sonraki mesaja atla if (($msgcnt == 2) and ($check == 0) and (!$admin)){continue;} // Ad girilmemişse Adsız yaz if ($name==""){$name="Adsız";} $time = date($tformat,($sf*60+$time)); $mesaj = stripslashes($mesaj); $trtable = array( "
" => "\n", "<" => "<", ">" => ">", '"' => """, "'" => "'"); $mesaj = strtr($mesaj,$trtable); // kelimeler uzunsa böl $mesaj = ereg_replace("([^ ]{50})", "\\1
", $mesaj); // web adresleri linklere dönüştür $mesaj = eregi_replace("(^|[>[:space:]\n])([[:alnum:]]+)://([^[:space:]]*)([[:alnum:]#?/&=])([<[:space:]\n]|$)","\\1\\2://\\3\\4 ", $mesaj); $mesaj = preg_replace("/([\n >\(])www((\.[\w\-_]+)+(:[\d]+)?((\/[\w\-_%]+(\.[\w\-_%]+)*)|(\/[~]?[\w\-_%]*))*(\/?(\?[&;=\w\+%]+)*)?(#[\w\-_]*)?)/", "\\1www\\2", $mesaj); // satır sonlarını
ye dönüştür $mesaj = ereg_replace("\n","
",$mesaj); $temp = ereg_replace('#time#',$time,$temp); $temp = ereg_replace('#name#',$name,$temp); // yönetici giriş yaptıysa ; yönetici fonksiyonlarını ekle if ($admin){ // mesaj onaylı değilse if ($check != 1){$mesaj = "MESAJ ONAY BEKLİYOR !
$mesaj";} $admno = $lno+1; $replace = "$admno \"Düzenle\" \"Sil\" "; if ($check == 0){$replace .= "\"Onayla\"";} } else { if ($check==0){$mesaj = "MESAJINIZ ONAY BEKLİYOR !";} $replace=''; // ip'in son rakamlarını xxx e dönüştür $ip = preg_replace("/(\d+)\.(\d+)\.(\d+)\.(\d+)/","$1.$2.$3.xxx",$ip); } $temp = ereg_replace('#edit#',$replace,$temp); //$temp = ereg_replace('{ip}',"\"IP:$ip\"",$temp); $temp = ereg_replace('#ip#',"\"IP:$ip\"",$temp); // email varsa linke dönüştür if ($email){$replace = "\"$email\"";} else{$replace = '';} $temp = ereg_replace('#email#',$replace,$temp); $temp = ereg_replace('#yer#',$yer,$temp); // web sayfası varsa linke dönüştür if ($web){$replace = "\"$web\"";} else{$replace = '';} $temp = ereg_replace('#web#',$replace,$temp); $temp = ereg_replace('#message#',$mesaj,$temp); echo $temp; } } else{echo "Kayıtlı mesaj yok
";} echo "
$links"; } echo "
Ziyaretçi Defteri "; exit; ////////// FONKSİYONLAR /////////////////////// /////////// Web doğru mu //// IS WEB ///////// function isweb($web){ if (eregi("(^|[>[:space:]\n])([[:alnum:]]+)://([^[:space:]]*)([[:alnum:]#?/&=])([<[:space:]\n]|$)", $web)) {return TRUE;}else {return FALSE;} } //////////// Email Doğru mu /// IS EMAIL ////// function isemail($email){ if (eregi("^([a-z]|[0-9]|\.|-|_)+@([a-z]|[0-9]|\.|-|_)+\.([a-z]|[0-9]){2,3}$", $email) && !eregi("(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)", $email)) {return TRUE;}else {return FALSE;} } function pheader ($ptitle){ global $chrset, $skin; header("Content-type: text/html;charset=$chrset"); echo "$ptitle"; echo "
"; } /// Kullanıcı IP adresi function userip(){ if (isSet($_SERVER)) { if (isSet($_SERVER["HTTP_X_FORWARDED_FOR"])) { $IP = $_SERVER["HTTP_X_FORWARDED_FOR"]; } elseif (isSet($_SERVER["HTTP_CLIENT_IP"])) { $IP = $_SERVER["HTTP_CLIENT_IP"]; } else { $IP = $_SERVER["REMOTE_ADDR"]; } } else { if ( getenv( 'HTTP_X_FORWARDED_FOR' ) ) { $IP = getenv( 'HTTP_X_FORWARDED_FOR' ); } elseif ( getenv( 'HTTP_CLIENT_IP' ) ) { $IP = getenv( 'HTTP_CLIENT_IP' ); } else { $IP = getenv( 'REMOTE_ADDR' ); } } return $IP; }