session_start();
session_register(password);
include ("html/config.html"); //ȯ°æ ¼³Á¤ÆÄÀÏÀ» ºÒ·¯¿Â´Ù
$dbpath = $datadir.$db;
global $dbpath, $dbtype, $admin_pw, $url, $db; //À§ÀÇ °æ·Î¸¦ Àü¿ªº¯¼ö·Î ¼±¾ð
###########################################################################
# Function µéÀÌ Á¤ÀǵǾîÀÖÀ½
function administrator($password,$db) { //°ü¸®ÀÚ ¸Þ´º
include ("html/config.html");
global $dbpath,$url;
if ($admin_pw == $password) {
manageDB($dbpath,$db);
}
else { echo ("
");
}
}
function manageDB($dbpath,$db) {
global $url;
include ("html/config.html");
include ("html/head.html");
if ($action == '') {
################µð·ºÅ丮ÀÇ ³»¿ëÀ» º¸¿©ÁØ´Ù##############
$dir = dir("$dbpath");
echo ("
DBÀ̸§ | »èÁ¦Çϱâ |
");
$dir -> rewind();
while ($file = $dir->read()) { //admin menu ¸¦ Ãâ·ÂÇØÁØ´Ù
if ($file !='.' && $file !='..') {
echo (" |
|
") ;
} // end if
} // end while
echo (" DB »ý¼º |
|
");
$dir -> close();
################µð·ºÅ丮 ³»¿ëº¸¿©Áֱ⠳¡################
} //end if
}
function GetNextId($dbm) { //DB¿¡¼ ´ÙÀ½ ۰ªÀ» °¡Á®¿Â´Ù
$max_id = 0;
$key = dba_firstkey($dbm);
while ($key != false) {
if ($key > $max_id) {
$max_id = $key;
}
$key = dba_nextkey($dbm);
}
return $max_id + 1;
} // end GetNextId()
function search_keyword($dbm,$keyword) //DB·ÎºÎÅÍ Æ¯Á¤ Ű¿öµå¸¦ ã´Â´Ù
{
$r = array();
$key = dba_firstkey($dbm);
$count = 1;
while ($key != false)
{
$value = dba_fetch($key,$dbm);
if (ereg($keyword,$value))
{
$r[$count] = $value;
$count++;
} // end if
$key = dba_nextkey($dbm);
} // end while
return $r ;
} // end search_keyword()
function overview_start() //³»¿ëº¸¿©ÁÖ±âÀÇ ÇìµåºÎºÐ
{
global $db,$url;
include ("html/config.html");
echo ("
");
} //end overview_start()
function overview_entry($data) //³»¿ë º¸¿©ÁÖ±âºÎºÐ
{
global $db;
include ("html/config.html");
echo ("
»èÁ¦ |
³¯Â¥ : $data[date] IP : $data[ip] |
±Û¾´ÀÌ |
");
if (!$data[email]) { echo ("$data[name] E-mail : ¾øÀ½ | "); }
else { echo ("$data[name] E-mail : $data[email] "); }
echo ("
ȨÆäÀÌÁö | ");
if (!$data[homepage]) { echo ("¾øÀ½ |
");}
else { echo ("$data[homepage]");}
echo ("
Á¦ ¸ñ | $data[title] |
³» ¿ë | ");
$body = nl2br($data[text]);
echo ("$body |
");
} // end overview_entry()
function overview_end() //³»¿ëº¸¿©ÁÖ±âÀÇ ¸¶Áö¸· ºÎºÐ
{
include ("html/config.html");
echo ("
");
} // end overview_end()
# Function µéÀÇ Á¤Àǰ¡ ³¡³²
###########################################################################
###########################################################################
# DB ¸¦ »ý¼º »èÁ¦Çϱâ À§ÇÑ ºÎºÐ
if ($action && ($Cdb || $DBname)) {
if ($action == 'create') {
$locateDB = $datadir.$Cdb;
if (!is_file($locateDB)) {
$dbm = dba_open($locateDB,"c",$dbtype);
dba_close($dbm);
echo ("
");
} // end if
else { echo (" ");
}
return;
} // end if
elseif ($action == 'delete') {
$locateDB = $datadir.$DBname;
@exec("rm -rf $locateDB");
echo ("
");
return;
} // end elseif
}
########################### DB»ý¼º»èÁ¦ ³¡ #######################
#########################################################################
# ȸ鿡 Ãâ·ÂÇÏ´Â ºÎºÐ #
#########################################################################
if ($mode == '') { // óÀ½ ½ÃÀ۵Ǵ ºÎºÐ, ¸®½ºÆ®¸¦ Ãâ·ÂÇØÁØ´Ù
$url = $PHP_SELF;
if (is_file($dbpath)) {
$dbm = dba_open($dbpath,"r",$dbtype);
} // end if
else {
if ($password=='') {
include ("html/head.html");
echo ("
");
include ("html/tail.html");
}
###########################################################################
# DBÆÄÀÏ¿¡ °ªÀ» ÀúÀå
if ($mode == 'add')
{
global $db,$dbtype,$dbpath;
$dbm = dba_open($dbpath,"c",$dbtype);
if (!$db) {
echo ("Database open faild");
return;
}
$data=array();
$vars=array(id,name,email,homepage,text,title,passwd); //°¡Á®¿Â °ªÀ» array¿¡ ÀúÀåÀ»ÇÔ
for ($i = 0 ; $i < count($vars) ; $i++)
{
$data[$vars[$i]] = ${$vars[$i]};
}
$data[id]=GetNextId($dbm); //ÆÄÀÏ¿¡¼ ÀúÀåµÉ À§Ä¡¸¦ °¡Á®¿È
$data[name]=$name;
$data[email]=$email;
$data[homepage]=$homepage;
$data[text]=$text;
$data[title]=$title;
$data[date]=$date;
$data[passwd]=$passwd;
$data[ip]=$ip;
dba_replace($data[id],serialize($data),$dbm); //ÆÄÀÏ¿¡ °ªÀ» ÀúÀå
dba_sync($dbm);
dba_close($dbm);
echo (""); //ùÆäÀÌÁö·Î À̵¿
}
##########################################################################
# ÆÐ½º¿öµå °Ë»ç
if ($mode == 'check')
{
overview_start();
echo ("
");
overview_end();
}
###########################################################################
# DB¿¡¼ °ªÀ» Áö¿î´Ù
if ($mode == 'comp')
{
$dbm = dba_open($dbpath,"r",$dbtype); //ÀбâÀü¿ëÀ¸·Î DB¸¦ ¿ÀÇÂÇÑ´Ù
if (!$dbm) {
echo ("Database open Failed");
return;
}
$value = dba_fetch($id,$dbm);
dba_close($dbm); //DB¸¦ ´Ý´Â´Ù
$entry = unserialize($value);
if (($entry[passwd] == $passwd) || ($admin_pw == $passwd))
{
global $db,$dbpath,$dbtype;
$dbm = dba_open($dbpath,"w",$dbtype); //°ªÀ» »èÁ¦ÇϱâÀ§ÇØ ¾²±â·Î DB¸¦ ¿ÀÇÂÇÑ´Ù
if (!$dbm) {
echo ("Database open Failed");
return;
}
dba_delete($id,$dbm);
dba_sync($dbm);
dba_close($dbm);
echo ("
");
}
else {
echo ("
");
}
}
?>