php 文本数据库类,PHP文本数据库类之管理(txtDB.manager.php) (转)

PHP文本数据库类之管理(txtDB.manager.php) (转)[@more@]

使用方法:结合txt.inc

初始和密码为:admin 123

CODE:

/*

TxtDb Manager

version: 0.1.0

:

This script is the manager for PHP txtDb.

#############################

Suppose Modify structrual

*/

include('txtdb.inc');

$="txtdb";

$s_admins=array("admin","admin2","admin3");

$s_pass="123";

####################

if(isset($_GET))@extract($_GET);

if(isset($_POST))@extract($_POST);

if(isset($_SESSION))@extract($_SESSION);

if(isset($_COOKIE))@extract($_COOKIE);

#################

if(isset($u_admin))$admin=$u_admin;

if(isset($u_password))$password=md5($u_password);

$s_password=md5($s_password);

$islogin=false;

if(($password==$s_password)and in_array($admin,$s_admins)){

setcookie('admin', $admin);

setcookie('password',$password);

$islogin=true;

if(isset($u_admin) and isset($u_password))echo"";

}

if($action=="quit"){

setcookie('admin');

setcookie('password');

$islogin=false;

echo "";

}

if(!$islogin and $action!="leftbar" and $action!="")$action="main";

#################

?>

Episome TxtDb Manager

##########################

if(!is_dir($root))

die('Current TxtDb root does not exists!');

$db=new txtDb($root);

$version=$db->version;

############################

switch($action){

case "leftbar":

leftbar();

break;

case "main":

main();

break;

case "selecttable":

selecttable($table);

break;

case "viewdata":

viewdata($table,$start,$num,$sortby,$order,$keyword,$fields,$selectstring,$selectcolumn);

break;

case "newtable":

newtable($table,$tblfields);

break;

case "insertrecord":

insertrecord($table,$value,$id);

break;

case "delrecord":

delrecord($table,$id,$start,$num,$order,$sortby);

break;

case "editrecord":

editrecord($table,$id,$act,$value,$start,$num,$order,$sortby);

break;

case "droptable":

droptable($table);

break;

case "cleartable":

cleartable($table);

break;

default:

index();

}

/*

edit a row from table

*/

function editrecord($table,$id,$act,$value,$start,$num,$order,$sortby){

global $db;

$order=($order=="asc")?"desc":"asc";

$db->open($table,$id,1);

if($act=="save" and is_array($value)){

$db->change($value,$id);

echo "

The record of table [".$table."] has been modifyed !";

echo "

View data";

die();

}

echo"

Modify record of table [".$table."] !

";

foreach($db->fieldNames as $field){

$v=stripslashes($db->dbValues[$id][$field]);

echo "

$field :

$v

";

}

echo"

";

}

/*

delete a row from table

*/

function delrecord($table,$id,$start,$num,$order,$sortby){

global $db;

$order=($order=="asc")?"desc":"asc";

$db->open($table,0,1);

$db->delete($id);

echo "

The record of table [".$table."] has been deleted !";

echo "

View data";

die();

}

/*

Insert a row to table

*/

function insertrecord($table,$value,$id){

global $db;

$db->open($table,0,1);

if(is_array($value)){

$db->append($value,$id);

echo "

The record has been inserted to table [".$table."]!";

echo "

View data";

echo "

Insert record";

die();

}

echo"

Insert record to [".$table."]";

echo "";

echo "

";

foreach($db->fieldNames as $field){

echo "

$field :

";

}

echo "

ID

";

}

/*

view data

*/

function viewdata($table,$start,$num,$sortby,$order,$keyword,$fields,$selectstring,$selectcolumn){

global $db;

if(trim($start)=='')$start=0;

if(trim($num)=='')$num=30;

$db->open($table,$start,$num);

if(trim($sortby)!='')

$db->sortby($sortby,$order);

$order=($order=="asc")?"desc":"asc";

$dbValues=$db->dbValues;

if(trim($keyword)!="")

$dbValues=$db->query($keyword,$fields);

if(trim($selectstring)!="")

$dbValues=$db->select($selectcolumn,$selectstring);

echo"

Data for Table [".$table."]

Actions

ID

";

foreach($db->fieldNames as $value){

$select_string.="".$value."";

echo"";

if(is_array($dbValues))

foreach($dbValues as $id=>$Values){

echo "

";

echo "$id";

if(is_array($Values))

foreach($Values as $key=>$value){

echo "".htmlspecialchars($value)."";

}

echo "

";

}

echo"

Query :

Show

rows [All]

Starting from

For in

$select_string

[All]

For ==

$select_string

Records : $db->lines

Clear or Drop this table.

";

$db->times();

}

/*

select table

*/

function selecttable($table){

global $db;

$db->open($table,0,1);

echo "

Select Table [".$table."]";

echo "

Path : ".$db->tableName;

echo "

Size : ".number_format(filesize($db->tableName))." (bytes)";

echo "

Records : ".$db->lines;

echo "

Fields :".$db->fields."

";

echo "";

foreach($db->fieldNames as $value){

echo "".$value;

}

echo "";

echo "";

echo "";

echo "";

echo "

View data";

echo "

Clear or Drop this table.";

echo "

Time of last modification : ".date ("F d Y H:i:s.", filemtime($db->tableName))."

";

clearstatcache();

$db->times();

}

/*

clear table

*/

function cleartable($table){

global $db;

$db->open($table,0,1);

$db->clear();

echo "

The table [".$table."] has been cleared !";

}

/*

drop table

*/

function droptable($table){

global $db;

$db->open($table,0,1);

$db->drop();

echo "

The table [".$table."] has been droped !";

echo "";

}

/*

create table

*/

function newtable($table,$tblfields){

global $db;

if(isset($table) and isset($tblfields)){

if(!ereg("^[-a-zA-Z0-9_.]",$table))

die('Table name ['.$table.'] not allow!');

$tblfields=str_replace("

","",$tblfields);

$fields=explode("",$tblfields);

foreach($fields as $key=>$value){

if(trim($value)=="")unset($fields[$key]);

}

if($db->create($table,$fields)){

echo "

The table [".$table."] has been created !

";

echo "";

die();

}

}

?>

Create New Table

TableName:

Fields: (field per line)

}

/*

show DB information

*/

function main(){

global $version,$islogin;

$httphost=$_ENV["HTTP_HOST"];

$server=$_SERVER["SERVER_SOFTWARE"];

$php=PHP_VERSION;

$os=PHP_OS;

echo"

Welcome to TxtDb Manager

TxtDb $version running on $httphost

PHP $php running on $os

Server_SoftWare : $server";

if(!$islogin){

echo "

";

}

echo "

";

}

/*

navigation bar

*/

function leftbar(){

global $db,$islogin;

?>

=$db->root?>

";

showTables($db->root,$db->exten);

echo"

Actions

";

}

/*

show All tables

*/

function showtables($path){

global $db;

$dirhandle=opendir($path);

while($file=readdir($dirhandle)){

if ($file!="." && $file!=".."){

if (is_dir($path.'/'.$file)){

showtables($path.'/'.$file);

}else{

$path_info=pathinfo($file);

$exten=strtolower(".".$path_info["extension"]);

if($exten==strtolower($db->exten)){

if(strpos($path,'/')){

$file=str_replace($db->root.'/','',$path.'/'.$file);

$subdir=" ";

}

$file=str_replace($db->exten,'',$file);

echo "

$subdirw $file

";

}//

}

}

}

closedir($dirhandle);

}

/*

index of this manager

*/

function index(){

print'

';

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值