Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Luther

$_server['php_self']

Recommended Posts

É isso mesmo,

 

Não consegui resolver essa "joça". Quando eu uso o $_SERVER['PHP_SELF'], ele me retorna duas vezes o endereço do Script atual, por exemplo:

 

Eu usei o $_SERVER['PHP_SELF'] no arquivo "aplicativoTeste\index.php" e ele me retorna o seguinte resoltado: "/aplicativoTeste/index.php/aplicativoTeste/index.php"

 

Não consegui imaginar que "m*****" está acontecendo para tentar resolver isso. Estou fuçando no PHP.INI, mas ainda não achei nada que fosse relacionado à isso.

 

Estou usando o PHP 5.2.x

IIS

MySQL 4

 

Obrigado, para quem puder ajudar... ^^

Compartilhar este post


Link para o post
Compartilhar em outros sites

se possível, mostre o conteudo do arquivo

 

"aplicativoTeste\index.php"

Para não ficar tão sujo a visualização eu negritei aonde ta pegando o erro.

 

<?php require_once('Connections/connMySQL_bcoUsuarios.php'); ?>

<?php

/*

FUNÇÃO PARA AUTENTICAR OS DADOS FORNECIDOS VIA LDAP v.1.01

- Ao ser chamada ela pega as informações fornecidas e tenta uma autenticação no Dominio

- Caso falhe na autenticação retorna FALSE

- Caso seja bem sucedido na autenticação retorna TRUE

*/

function autenticarLDAP($servidor,$dominio,$usuario_ad,$senha_ad) {

// Tenta se conectar com o servidor

if (!($connect = ldap_connect($servidor))) {

return FALSE;

}

// Tenta autenticar no servidor

if (!($bind = ldap_bind($connect, "$dominio\\$usuario_ad", "$senha_ad"))) {

// se não validar retorna false

return FALSE;

} else {

// se validar retorna true

return TRUE;

}

}

 

 

/*

COMPARATIVO COM O BANCO DE USUARIO DA INTRANET E DOMINIO

- Caso os dados já tenham sido digitados, inicia o processo de autenticação e comparacao Bco Intranet

- Recupera os dados digitados pelo usuário no login.php;

- Compara com os usuarios cadastrados no Bco da Intranet, verifica se existe o usuario fornecido;

- Usa SWITCH e IF's ELSE's para isso;

- Em caso positivo realiza a autenticação no dominio chamando a função autenticarLDAP;

- A função autenticarLDAP verifica se os dados estão certos:

- Caso a autenticação no dominio seja positiva ele redireciona para o index.php;

- Caso a autenticação no dominio seja negativa ele redireciona para o login.php, com erro;

- Em caso negativo retorna para o login.php com um codigo de ERRO;

*/

if (isset($_POST["campoUSUARIO"])){

 

$usuario_AD = $_POST["campoUSUARIO"];

$senha_AD = $_POST["campoSENHA"];

 

mysql_select_db($database_connMySQL_bcoUsuarios, $connMySQL_bcoUsuarios);

$query_rsCompararUsuario = "SELECT * FROM bco_usuarios WHERE LOGIN = '$usuario_AD'";

$rsCompararUsuario = mysql_query($query_rsCompararUsuario, $connMySQL_bcoUsuarios) or die(mysql_error());

$row_rsCompararUsuario = mysql_fetch_assoc($rsCompararUsuario);

$totalRows_rsCompararUsuario = mysql_num_rows($rsCompararUsuario);

 

$usuario_INTRANET = $row_rsCompararUsuario['LOGIN'];

$usuario_PERFIL = $row_rsCompararUsuario['PERFIL'];

$usuario_AUTENTICACAO = $row_rsCompararUsuario['idAUTENTICACAO'];

 

switch ($usuario_AD) {

case "$usuario_INTRANET":

if (!(autenticarLDAP("192.168.130.21", "tmscallcenter", "$usuario_AD", "$senha_AD"))) {

header("Location: http://localhost/newIntranet/login.php?mERROR=0002");

} else {

//Registrando as variáveis na sessão

session_start();

$_SESSION["usuario_AD"] = $usuario_AD;

$_SESSION["senha_AD"] = $senha_AD;

$_SESSION["usuario_PERFIL"] = $usuario_PERFIL;

$_SESSION["usuario_AUTENTICACAO"] = $usuario_AUTENTICACAO;

//Redirecionando para a página inicial do sistema

header("Location: http://localhost/newIntranet/index.php");

}

break;

case !("$usuario_INTRANET"):

header("Location: http://localhost/newIntranet/login.php?mERROR=0001");

}

 

mysql_free_result($rsCompararUsuario);

}

?>

<?php

/*

BLOQUEAR NAVEGADORES v.1.01

- Condição para Bloquear outros navegadores que não seja o IE

- Moises de Matos Gil - tecnico.moises@uol.com.br

*/

$substring = stristr($_SERVER['HTTP_USER_AGENT'], "msie");

if (empty($substring)) {

echo "Sistema compatível apenas com Internet Explorer 6.0 ou Superior";

} else {

 

?>

<html>

<head>

<title>..:: INTRANET GERENCIA TECNICA ::..</title>

<link href="objetos/todasPaginas.css" rel="stylesheet" type="text/css">

</head>

<body>

<div id="divContainer" align="center">

<div id="divTopo">

<table width="100%" border="0" cellspacing="0" cellpadding="0" class="borderTable01">

<tr>

<td align="left" width="120"><font class="fontTituloNegrito">INTRANET</font></td>

<td align="left"> </td>

</tr>

</table>

</div>

<div id="divEsquerda">

<table width="100%" border="0" cellspacing="0" cellpadding="0">

<tr>

<td width="10" height="10" align="center" class="borderTableTopoLeft"> </td>

<td height="10"> </td>

<td height="10"> </td>

<td width="10" height="10" align="center" class="borderTableTopoRight"> </td>

</tr>

<form name="formAUTENTICACAO" id="formAUTENTICACAO" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">

<tr>

<td width="10" align="center" class="borderTableMeioLeft"> </td>

<td width="150" height="10" align="right"><font class="fontNormalNegrito">Login:</font></td>

<td width="150" height="10"><input type="text" value="" name="campoUSUARIO" id="campoUSUARIO" class="inputSimples"></td>

<td width="10" height="10" align="center" class="borderTableMeioRight"> </td>

</tr>

<tr>

<td width="10" align="center" class="borderTableMeioLeft"> </td>

<td width="150" height="10" align="right"><font class="fontNormalNegrito">Senha:</font></td>

<td width="150" height="10"><input type="password" value="" name="campoSENHA" id="campoSENHA" class="inputSimples"></td>

<td width="10" height="10" align="center" class="borderTableMeioRight"> </td>

</tr>

<tr>

<td width="10" align="center" class="borderTableMeioLeft"> </td>

<td width="150" height="10" align="right"><font class="fontNormalNegrito">Lembrar:</font></td>

<td width="150" height="10"><input type="submit" value="Entrar" class="inputSimples"></td>

<td width="10" height="10" align="center" class="borderTableMeioRight"> </td>

</tr>

</form>

<tr>

<td width="10" align="center" class="borderTableMeioLeft"> </td>

<td width="150" height="10"> </td>

<td width="150" height="10"><a href="#">Solicitar Acesso à Intranet</a></td>

<td width="10" height="10" align="center" class="borderTableMeioRight"> </td>

</tr>

<tr>

<td width="10" align="center" class="borderTableBaixoLeft"> </td>

<td height="10"> </td>

<td height="10"> </td>

<td width="10" height="10" align="center" class="borderTableBaixoRight"> </td>

</tr>

</table>

</div>

<div id="divCentroSaudacao">

<table width="100%" border="0" cellspacing="0" cellpadding="0">

<tr>

<td width="10" height="10" align="center" class="borderTableTopoLeft"> </td>

<td height="10"> </td>

<td height="10"> </td>

<td width="10" height="10" align="center" class="borderTableTopoRight"> </td>

</tr>

<tr>

<td width="10" align="center" class="borderTableMeioLeft"> </td>

<td colspan="2" rowspan="4" align="center"><iframe width="400" height="100%" frameborder="0" scrolling="no" name="autoVisor" id="autoVisor" style="display:block;"></iframe></td>

<td width="10" height="10" align="center" class="borderTableMeioRight"> </td>

</tr>

<tr>

<td width="10" align="center" class="borderTableMeioLeft"> </td>

<td width="10" height="10" align="center" class="borderTableMeioRight"> </td>

</tr>

<tr>

<td width="10" align="center" class="borderTableMeioLeft"> </td>

<td width="10" height="10" align="center" class="borderTableMeioRight"> </td>

</tr>

<tr>

<td width="10" align="center" class="borderTableMeioLeft"> </td>

<td width="10" height="10" align="center" class="borderTableMeioRight"> </td>

</tr>

<tr>

<td width="10" align="center" class="borderTableBaixoLeft"> </td>

<td height="10"> </td>

<td height="10"> </td>

<td width="10" height="10" align="center" class="borderTableBaixoRight"> </td>

</tr>

</table>

</div>

<div id="divRodape">

<table width="100%" border="0" cellspacing="0" cellpadding="0" class="borderTable01">

<tr>

<td align="center"><a href="#">Sobre a Intranet</a> - <a href="#">Termos</a> - <a href="#">Ajuda</a></td>

</tr>

</table>

</div>

</div>

</body>

</html>

<?php } // FIM DA CONDIÇÃO DE BLOQUEAR NAVEGADORES ?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Só uma questão de url absoluta e url relativa!!!

 

<form name="formAUTENTICACAO" id="formAUTENTICACAO" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">

 

<form name="formAUTENTICACAO" id="formAUTENTICACAO" method="post" action="http://www.site/<?php echo $_SERVER['PHP_SELF']; ?>">

 

Se quer a mesma página não é mais fácil usar SCRIPT_NAME?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu sei que não é o melhor modo de resolver,

mas em casos urgente ajuda...

 

Já que está duplicando basta cortar noi meio exato =D

Explicando melhor:

 

Não é que sai duplicado.

$_SERVER['PHP_SELF'] devolve o path relativo do script em relação a raiz do site, ou diretório root, como preferir.

 

Ex.

O script é www.umsite.com/album/fotos/galeria.php

então $_SERVER['PHP_SELF'] é /album/fotos/galeria.php

 

O browser interpreta isso(p.e. <a href="$_SERVER['PHP_SELF']">bla</a>) como sendo uma URL relativa ao endereço atual, ai fica:

www.umsite.com/album/fotos/galeria.php/album/fotos/galeria.php

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.