!c99Shell v. 1.0 pre-release build #16!

Software: Apache/2.2.3 (CentOS). PHP/5.1.6 

uname -a: Linux mx-ll-110-164-51-230.static.3bb.co.th 2.6.18-194.el5PAE #1 SMP Fri Apr 2 15:37:44
EDT 2010 i686
 

uid=48(apache) gid=48(apache) groups=48(apache) 

Safe-mode: OFF (not secure)

/var/www/html/mistk_joice2222/ums/   drwxr-xr-x
Free 52.34 GB of 127.8 GB (40.95%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     clsUmMenu.php (6.21 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
//--Class ummenu--------------------------
//--PK of ummenu ::
//	1. MnID
class ummenu extends clsDB{

var $result;

var $MnStID;
var $MnID;
var $MnSeq;
var $MnIcon;
var $MnNameT;
var $MnNameE;
var $MnURL;
var $MnDesc;
var $MnToolbar;
var $MnToolbarSeq;
var $MnToolbarIcon;
var $MnParentMnID;
var $MnLevel;

function ummenu(&$c){
	$this->c=$c->c; 
	$this->DB=$c->db;
	
}

function Save(){
//--ใช้เมธอดนี้เมื่อต้องการบันทึกข้อมูลในอ๊อบเจ๊กเข้าสู่ฐานข้อมูล
//--โดยจะตรวจสอบสถานะของข้อมูลว่าข้อมูลในอ๊อบเจ๊กเป็นข้อมูลใหม่หรือข้อมูลเดิม
//--1 เป็นข้อมูลใหม่  2 เป็นข้อมูลเดิม
	if ($this->status==1){
		$this->MnID=$this->GetNextCode();
		$this->MnSeq = $this->MnID;
		//$mxSeq = $this->GetMaxSeqByParentMenuID($this->MnParentMnID);
		$sql = "insert into ummenu values(
					'$this->MnStID', 
					'$this->MnID', 
					'$this->MnSeq', 
					'$this->MnIcon', 
					'$this->MnNameT', 
					'$this->MnNameE', 
					'$this->MnURL', 
					'$this->MnDesc', 
					'$this->MnToolbar', 
					'$this->MnToolbarSeq', 
					'$this->MnToolbarIcon', 
					'$this->MnParentMnID', 
					'$this->MnLevel')";
	}else {
		$sql = "update ummenu set 
					MnID='$this->MnID', 
					MnSeq='$this->MnSeq', 
					MnIcon='$this->MnIcon', 
					MnNameT='$this->MnNameT', 
					MnNameE='$this->MnNameE', 
					MnURL='$this->MnURL', 
					MnDesc='$this->MnDesc', 
					MnToolbar='$this->MnToolbar', 
					MnToolbarSeq='$this->MnToolbarSeq', 
					MnToolbarIcon='$this->MnToolbarIcon', 
					MnParentMnID='$this->MnParentMnID', 
					MnLevel='$this->MnLevel'  
					where MnID='$this->MnID'";
	}
	return $this->Dml($sql);
}

function Delete(){
//--ใช้เมธอดนี้เพื่อลบข้อมูลเดิมในอ๊อบเจ๊ก
//--เป็นการลบข้อมูลทีละ 1 เรคอร์ด
//--ต้องเรียกเมธอดตามลำดับดังนี้ SearchByKey()-->GetRecord()-->Delete()
	return $this->Dml("delete from ummenu where MnID='$this->MnID'");
}

function GetNextCode(){
//--ใช้เมธอดนี้เพื่อหาค่าสูงสุดของฟิลด์ที่ใช้เป็นคีย์ของตาราง ในลักษณะ auto increment
//--ต้องเป็นฟิลด์ที่ไม่ได้กำหนดรหัสเองทางจอภาพ
	$this->SetQuery("select max(MnID) as num from ummenu");
	if ($result=$this->GetResult()) {
		return $result['num']+1;
	}
}

function RSummenu(){
//--เมธอดที่ขึ้นต้นด้วย RS (Result Set) มีความหมายว่าจะได้รับข้อมูลกลับมาจากการ select มากกว่า 1 เรคอร์ด
//--ปกติเมื่อเรียกใช้เมธอด RSxxxx จะต้องเรียกเมธอด GetRecord() ด้วยเสมอ
//--โดยสามารถเพิ่มเมธอดได้ตามต้องการ แต่ต้องขึ้นต้นด้วย RS
	$this->SetQuery("select * from ummenu order by MnID");
}

function GetRecord(){
//--เป็นเมธอดที่นำข้อมูลจาก ResultSet มากำหนดให้กับแอตทริบิวต์ของอ๊อบเจ็ก
//--เรียก GetRecord() หนึ่งครั้ง จะเลื่อนตัวชี้เรคอร์ดไปอีกหนึ่งเรคอร์ด
	if ($this->result = $this->GetResult()) {
		$this->MnStID = $this->result['MnStID'];
		$this->MnID = $this->result['MnID'];
		$this->MnSeq = $this->result['MnSeq'];
		$this->MnIcon = $this->result['MnIcon'];
		$this->MnNameT = $this->result['MnNameT'];
		$this->MnNameE = $this->result['MnNameE'];
		$this->MnURL = $this->result['MnURL'];
		$this->MnDesc = $this->result['MnDesc'];
		$this->MnToolbar = $this->result['MnToolbar'];
		$this->MnToolbarSeq = $this->result['MnToolbarSeq'];
		$this->MnToolbarIcon = $this->result['MnToolbarIcon'];
		$this->MnParentMnID = $this->result['MnParentMnID'];
		$this->MnLevel = $this->result['MnLevel'];
		return 1;
	}else {
		return 0;
	}
}

function SearchByKey($xKey){
//--ใช้เมธอดนี้เพื่อค้นหาข้อมูลตาม PK ต้องระบุพารามิเตอร์ด้วย
//--และต้องตามด้วยเมธอด GetRecord() เสมอ
	if ($this->SetQuery("select * from ummenu where MnID= '$xKey'")){ 
		return 1;
	}else {
		return 0;
	}
}
//****************** You can add new functions below **********************//
function DeleteBySt($StID){
	return $this->Dml("delete from ummenu where MnStID='$StID'");
}

function RSMainMenuBySt($StID){
	$sql = "select * 
					from ummenu 
					where mnstid=$StID and mnparentmnid=0 
					order by MnIcon, mnparentmnid, mnseq ";
	$this->SetQuery($sql);
}

function RSmenuByParentMn($MnID){
	$sql = "select * from ummenu where mnparentmnid=$MnID order by mnseq";
	$this->SetQuery($sql);
}

function GetMaxSeqByParentMenuID($ParentMnID){
	$sql="select max(MnSeq) as num 
			from ummenu 
			where MnParentMnID='$ParentMnID'";
	$this->SetQuery($sql);
	if ($result=$this->GetResult()) {
		if ($result['NUM']=="")
			return 1;
		else
			return $result['NUM']+1;
	}
}
////////////////
function hasSubMenu($pmnID){
	$this->SetQuery("select count(*) as num from ummenu where MnParentMnID='$pmnID'");
	$result=$this->GetResult();
	return $result['num'];
}
function numMenuInSameParent($pmnID){
	$this->SetQuery("select count(*) as num from ummenu where MnParentMnID='$pmnID'");
	$result=$this->GetResult();
	return $result['num'];
}
function getMinSeq($pmnID){
	$this->SetQuery("select min(MnSeq) as num from ummenu where MnParentMnID='$pmnID'");
	$result=$this->GetResult(); 
	return $result['num'];
}
function getMaxSeq($pmnID){
	$this->SetQuery("select max(MnSeq) as num from ummenu where MnParentMnID='$pmnID'");
	$result=$this->GetResult();
	return $result['num'];
}
function swapMenu($ud, $MnStID, $MnID, $MnSeq, $PmnID, $MnLevel){
	//echo "---$ud, $MnStID, $MnID, $MnSeq, $PmnID, $MnLevel===";
	if($ud=="u"){
		$sql="select MnID, MnSeq from ummenu where MnParentMnID='$PmnID' and MnSeq<'$MnSeq' and MnLevel='$MnLevel' order by MnSeq Desc limit 0,1";
		$this->SetQuery($sql);
		$result=$this->GetResult();
		$upMnId = $result['MnID'] ;
		$upMnSeq = $result['MnSeq'] ;
		$sql="update ummenu set MnSeq='$MnSeq' where MnID='$upMnId' ";
		$this->Dml($sql);
		$sql="update ummenu set MnSeq='$upMnSeq' where MnID='$MnID' ";
		$this->Dml($sql);		
	}	
	if($ud=="d"){
		$sql="select MnID, MnSeq from ummenu where MnParentMnID='$PmnID' and MnSeq>'$MnSeq' and MnLevel='$MnLevel' order by MnSeq  limit 0,1";
		$this->SetQuery($sql);
		$result=$this->GetResult();
		$dnMnId = $result['MnID'] ;
		$dnMnSeq = $result['MnSeq'] ;
		$sql="update ummenu set MnSeq='$MnSeq' where MnID='$dnMnId' ";
		$this->Dml($sql);
		$sql="update ummenu set MnSeq='$dnMnSeq' where MnID='$MnID' ";
		$this->Dml($sql);
	}	
}

function setMenuSeq($mnID, $seq){
	$sql="update ummenu set MnSeq=$seq where MnID=$mnID";
	$this->SetQuery($sql);	
}

} //--End class ummenu--
?>

:: Command execute ::

Enter:
 
Select:
 

:: Shadow's tricks :D ::

Useful Commands
 
Warning. Kernel may be alerted using higher levels
Kernel Info:

:: Preddy's tricks :D ::

Php Safe-Mode Bypass (Read Files)

File:

eg: /etc/passwd

Php Safe-Mode Bypass (List Directories):

Dir:

eg: /etc/

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

:: Go Dir ::
 
:: Go File ::
 

--[ c999shell v. 1.0 pre-release build #16 Modded by Shadow & Preddy | RootShell Security Group | r57 c99 shell | Generation time: 0.0118 ]--