Ir para conteúdo

POWERED BY:

Arquivado

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

BrunoVieira

[Resolvido] erro com $_GET php 5.3.0

Recommended Posts

oi pessoal, estou a utilizar a versão php 5.3.0 e agora está a dar-me alguns erros em scripts já feitos.

 

por exemplo:

 


		switch ($_GET['sign_in'])
			{
			case "pass": echo ("  Login / Password inválidos"); break;
			case "pass2": echo ("  Password invalida"); break;
			case "logout_abusive": echo ("  Faça o login para aceder à sua conta"); break;
			case "susp": echo ("  Conta suspensa, contacte o Administrador"); break;
			}
	}

e no url tem tipo index.php?p=1

 

anteriormente nao dava erro nao tinha a variavel sign_in no url nao mostrava nada, agora da-me erro, como da para dar a volta a isso?

 

obrigado pela atenção

Compartilhar este post


Link para o post
Compartilhar em outros sites

qual o erro que retorna ?

 

*da pra por uma condicao para resolver isto

 

if($_GET['sign_in'])
 {
  switch ($_GET['sign_in'])
                        {
                        case "pass": echo ("  Login / Password inválidos"); break;
                        case "pass2": echo ("  Password invalida"); break;
                        case "logout_abusive": echo ("  Faça o login para aceder à sua conta"); break;
                        case "susp": echo ("  Conta suspensa, contacte o Administrador"); break;
                        }

 }

Compartilhar este post


Link para o post
Compartilhar em outros sites

andei a ver na net e o pessoal diz para por isto,

 

error_reporting(E_ERROR | E_WARNING | E_PARSE);

 

mas eu axo que não é muito bom pois não?

 

alguem me sabe dar uma dica

Compartilhar este post


Link para o post
Compartilhar em outros sites

Notice: Undefined index: sign_in in D:\wamp\www\mis\test.php on line 76

sabe o que significa a mensagem de erro ?

 

"Undefined index: sign_in"

Compartilhar este post


Link para o post
Compartilhar em outros sites

andei a ver na net e o pessoal diz para por isto,

 

error_reporting(E_ERROR | E_WARNING | E_PARSE);

 

mas eu axo que não é muito bom pois não?

 

alguem me sabe dar uma dica

 

Cara, o pessoal tem toda a razão, você não deve esconder erros. Antes seu site estava com erros, e não mostrava, agora mostra e você pode consertá-los :)

 

A dica é fazer exatamente como o que o Will Fernando disse. Mas muito estranho ainda estar apresentando o problema.

 

Coloca exatamente isso:

 

if(isset($_GET['sign_in'])) {
 switch ($_GET['sign_in'])
 {
 case "pass": echo (" Login / Password inválidos"); break;
 case "pass2": echo (" Password invalida"); break;
 case "logout_abusive": echo (" Faça o login para aceder à sua conta"); break;
 case "susp": echo (" Conta suspensa, contacte o Administrador"); break;
 }

 }

 

E mostra exatamente o erro que aparece para você.

Compartilhar este post


Link para o post
Compartilhar em outros sites

coloque um

 

cara esse erro ocorre pq no PHP 5.3.0 todas variaveis tem q receber 1 valor;

 

Para desaparecer com esse erro e funcionar normalmente , disabilite os erros.

 

no Wamp tem uma opção Display Startup errors (desabilita ela e testa)

 

Espero te-lo ajudado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

pois é mesmo isso que eu estou a fazer... assim já nao da erro...

 

já agora alguem sabe como se faz o seguinte:

 

tenho um registo de utlz e quero ver se o email já esta na base de dados, se estiver ele dá um alerta a dizer que já existe um email na base de dados e volta para o form com os valores que o utilizador preencheu..

Compartilhar este post


Link para o post
Compartilhar em outros sites

pois é mesmo isso que eu estou a fazer... assim já nao da erro...

 

já agora alguem sabe como se faz o seguinte:

 

tenho um registo de utlz e quero ver se o email já esta na base de dados, se estiver ele dá um alerta a dizer que já existe um email na base de dados e volta para o form com os valores que o utilizador preencheu..

 

BrunoVieira,

 

quanto ao assunto principal você já resolveu, certo ?

 

a outra duvida, não tem relação com o assunto, por isso, abra um novo tópico com a dúvida, ou pesquise no forum.

 

recentemente abriram uns 2 ou 3 tópicos com dúvida semelhante

Compartilhar este post


Link para o post
Compartilhar em outros sites

pois é mesmo isso que eu estou a fazer... assim já nao da erro...

 

Você só e somente só DEVE desabilitar a exibição de mensagens de erro quando seu site estiver funcionando plenamente, livre de erros.

 

Desabilitar a exibição dessas mensagens só para esconder um problema é como esconder a sujeira debaixo do tapete, uma hora você vai ter que limpar.

 

Para resolver o seu problema basta adicionar 1 única linha a mais no seu código, veja:

 

$sign_in =& $_GET[ 'sign_in' ]; //Atribuindo por referência.

switch ($sign_in)
{
	case "pass": echo (" Login / Password inválidos"); break;
	case "pass2": echo (" Password invalida"); break;
	case "logout_abusive": echo (" Faça o login para aceder à sua conta"); break;
	case "susp": echo (" Conta suspensa, contacte o Administrador"); break;
}

 

Veja esse link http://forum.imasters.com.br/public/style_emoticons/default/seta.gif Referências

Compartilhar este post


Link para o post
Compartilhar em outros sites

viva a todos,

 

eu quando estava a falar em "pois é mesmo isso que eu estou a fazer... assim já não da erro..." estava a referir-me a atribuir um valor a variável e nao ao error_reporting(E_ERROR | E_WARNING | E_PARSE);. não gosto de esconder isso, pois é como dizes amanha vou ter mais trabalho com isso.

 

sim testei e deu bem..

 

mais uma vez obrigado.

 

vou abrir outro tópico para o outro tema :P

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.