* Release 0.2 - 13 de Fevereiro de 2003 * São Paulo, Brasil */ /* * MS-Sql Query Executor * Longe de ser um substituto ao Enterprise Manager da M$, * o MS-Sql Query Executor é um script bastante simples, * que pode ser deixado junto ao servidor WEB, * e permite que você realize as mais diversas consultas * SQL ao servidor da M$, via PHP */ /* * Para utilizá-lo, certifique-se de: * Alterar a senha de administrador para realizar o seu login * Preencher pelo menos 1 array com os dados de seu banco de dados * Você pode cadastrar e utilizar quantos bancos de dados quiser * Se quiser, pode alterar o tempo de expiração da sessão entre consultas. */ $admin_pass = "admin"; // Senha do Usuário $sessao_expira = "3600"; // Tempo de expiração de sessão... Default de 1H (3600 segundos) /* $database[0] = array( 0 => "192.168.0.1",//Host 1 => "sa",//User 2 => "",//Pass 3 => "DataBase",//DataBase ); $database[1] = array( 0 => "192.168.0.2",//Host 1 => "sa",//User 2 => "",//Pass 3 => "DataBase2",//DataBase ); */ // Não mexa daqui pra frente, a menos que VSOQEF!!! // E se for mexer, me manda um e-mail.... // A comunidade agradece!!! function form_login($erro="") { $FORM = "
" . $erro; echo $FORM; } IF ((!($admin_pass)) || ($admin_pass == "admin")) { echo "ERRO: Não esqueça de alterar a senha de administrador!!!"; exit; } IF (!(is_array($database))) { echo "ERRO: Nenhuma base de dados foi cadastrada!!!"; exit; } session_start(); $hora_atual = time(); $hora_expira = $hora_atual - $sessao_expira; IF (($_SESSION['timestamp']) < $hora_expira ) { $_SESSION['logado'] = false; $erro_expira = "Sua Sessão Expirou!!!"; } $_SESSION['timestamp'] = time(); IF ($_POST['passwd']) { IF ($_POST['passwd'] == $admin_pass) { $_SESSION['logado'] = 1; } ELSE { $_SESSION['logado'] = false; $erro = "Senha Incorreta!!!"; form_login($erro); exit; } } IF (!($_SESSION['logado'])) { form_login($erro_expira); exit; } function conecta($base="0") { global $database; $conecta = @mssql_connect($database[$base][0],$database[$base][1],$database[$base][2]); $seleciona = @mssql_select_db($database[$base][3]); return $conecta; } function fecha($links=array()) { $tamanho = sizeof($links); FOR ($i=0; $i < $tamanho; $i++) { @mssql_close($links[$i]); } return true; } function rows_affected($link){ $result = @mssql_query("SELECT @@ROWCOUNT",$link); list($affected) = @mssql_fetch_row($result); return $affected; } IF (($_POST['query']) && ($_POST['query'] != "")) { $_POST['query'] = stripslashes($_POST['query']); $link[0] = conecta($_POST['database']); $result = mssql_query($_POST['query'],$link[0]); $foi = @rows_affected($link[0]); IF ($foi != 0) { $RETORNO = $foi . " registro(s) afetado(s)."; } ELSE { $RETORNO = "Nenhum resultado encontrado"; } while ($array_completa = @mssql_fetch_array($result)) { $i = 1; while(list($campo,$valor) = each($array_completa)) { IF (($i % 2) == 0) { $nova[$campo] = $valor; } $i++; } $array[] = $nova; $nova = array(); } FOR ($i=0; $i" . $campo . "\n"; } $TD .= "" . $valor . "\n"; } $TDS .= "\n" . $TD . "\n"; } IF (is_array($array)) { $RETORNO = "\n"; $RETORNO .= "\n" . $TH . "\n"; $RETORNO .= $TDS; $RETORNO .= "
"; } } $TEXTAREA_QUERY = htmlentities($_POST['query']); IF (!($TEXTAREA_QUERY)) { $TEXTAREA_QUERY = "/* sp_help */"; } $SELECT_DATABASE = "\n"; fecha($link); $PROJECT = "MS-Sql Query Executor - versão 0.2"; $LICENSE = "© 2003 - Auro Florentino"; ?> <?=$PROJECT;?>