Erro no codigo

PHP

20/12/2012

no browser aparece um erro relacionado ao [link] = undefined index,
o que pode ser???


<?php
			$link = $_GET["link"];
						
			$pag[1] = "home.php";
			$pag[2] = "lst_categoria.php";
			$pag[3] = "frm_categoria.php";
			
			if (!empty ($link)) //se a variavel link não estiver vazia
			{
				if (file_exists($pag[$link])) //se o arquivo existir
				{
					include $pag[$link]; //inclui o arquivo
				}
				else
				{
					include "home.php";
				}
			}
			else
			{
				include "home.php";
			}
		
		 ?>

Marcio Araujo

Marcio Araujo

Curtidas 0

Melhor post

Marcio Araujo

Marcio Araujo

21/12/2012

alguem poderia me ajudar com esse pequeno problema, obrigado
GOSTEI 1

Mais Respostas

William

William

20/12/2012

Tenta assim, verificando antes se existe a variável $_GET:

<?php
if (isset($_GET["link"])){
	$link = $_GET["link"];
}

$pag[1] = "home.php";
$pag[2] = "lst_categoria.php";
$pag[3] = "frm_categoria.php";

if (!empty ($link)) //se a variavel link não estiver vazia
{
if (file_exists($pag[$link])) //se o arquivo existir
{
include $pag[$link]; //inclui o arquivo
}
else
{
include "home.php";
}
}
else
{
include "home.php";
}

?>
GOSTEI 1
Marcio Araujo

Marcio Araujo

20/12/2012

Vlw, muito obrigado
GOSTEI 0
José

José

20/12/2012

Tendo entendido que a duvida foi solucionada, estou dando o tópico por concluído.
GOSTEI 0
Marcio Araujo

Marcio Araujo

20/12/2012

Obrigado Ricardo.
GOSTEI 0
Marcio Araujo

Marcio Araujo

20/12/2012

tenho mais uma duvida quanto a isso.

tem como personalizar? tipo, niveis de erro, existe?
GOSTEI 0
Rodrigo Lacerda

Rodrigo Lacerda

20/12/2012

Marcio , que eu saiba não... mas não afirmo com toda certeza.
GOSTEI 0
José

José

20/12/2012

Já que surgiu uma nova duvida estou reabrindo o tópico.
Amigo Marcio quando sua duvida for sanada sinalize para que possamos dar o tópico por concluído.

Obrigado a todos.
GOSTEI 0
Marcio Araujo

Marcio Araujo

20/12/2012

Marcio , que eu saiba não... mas não afirmo com toda certeza.


ok, vou procurar pelo assunto, caso eu ache, posto aqui.
GOSTEI 0
Marcio Araujo

Marcio Araujo

20/12/2012

Já que surgiu uma nova duvida estou reabrindo o tópico.
Amigo Marcio quando sua duvida for sanada sinalize para que possamos dar o tópico por concluído.

Obrigado a todos.


obrigado Ricardo.
GOSTEI 0
Rodrigo Lacerda

Rodrigo Lacerda

20/12/2012

Boa tarde!

sim, é possível criar um controle para as mensagens de erro..

Exemplo bem simples

<?php

function siteFiles( $n = '' ){

	$n = trim( $n );

	$rs['veiculos'] = 'carangas.php';
	$rs['contato']  = 'faleConosco.php';
	$rs['aboutus'] = 'empresa.php';
	$rs['faq']		= 'dummie.php';
	$rs['404']	   = 'notFound.php';

	if( $n != '' and isset( $rs[ $n ] ) ){
		// verifica se o índice existe
		return $rs[$n];
	}else{
		return false;
	}

}

$pageDefault = '404';

$v	= 'p';	  // nome do parâmetro..  http://.../?p=contato
$$v  = $pageDefault;  // indice para uma pagina default, caso nao retorne nada no $_GET
if( isset( $_GET[ $v ] ) ){
	$$v = $_GET[ $v ];  // obtendo valor do parametro
}
if( !$inc = siteFiles( $$v ) ){
	$inc = siteFiles( $pageDefault );

	/**
	  aqui ocorreu um erro. você pode criar uma rotina para gerar logs e analisá-los posteriormente com finalidade de melhorias no sistema
	*/

}else{
	//echo $inc; // for debug only
}

include $inc; // inclui o arquivo com segurança
?>


Espero ter ajudado!
GOSTEI 0
Marcio Araujo

Marcio Araujo

20/12/2012

vlw Rodrigo.
GOSTEI 0
Rodrigo Lacerda

Rodrigo Lacerda

20/12/2012

Disponha amigo,

Fico feliz em ter ajudado.
GOSTEI 0
William

William

20/12/2012

Finalizando o tópico!
GOSTEI 0
POSTAR