Ir para conteúdo

POWERED BY:

Arquivado

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

fernandojussec

[Resolvido] Erro aparecendo no formulario

Recommended Posts

Ola pessoal estou iniciando em progrmação PHP e estou me deparando com o seguinte erro:

 

Notice: Undefined index: funcao in C:\wamp\www\Site_insert\form.php on line 9

 

Notice: Undefined index: funcao in C:\wamp\www\Site_insert\form.php on line 52

 

 

este é meu codigo:

<meta http-equiv="Content-Type" content = "text/html; charset=iso8859-1" />
<HTML>
<HEAD>
<TITLE>ENVIO DE MENSSAGEM</TITLE>
</HEAD>
<BODY>
<?
include "conexao.php";
if($_GET['funcao'] != "editar"){
?>
<FORM ID="MENSSAGEM" NAME="MENSSAGEM" METHOD="POST" ACTION="funcoes.php?funcao=gravar">
		<TABLE WIDTH="362" BORDER="0">
			<TR>
				<TD WIDTH="69">NOME:</TD>
				<TD WIDTH="283"><LABEL>
				<INPUT NAME = "NOME" TYPE="TEXT" ID="NOME" SIZE="40"/>
				</LABEL></TD>
			</TR>
			<TR>
				<TD WIDTH="69">EMAIL:</TD>
				<TD WIDTH="283"><LABEL>
				<INPUT NAME = "EMAIL" TYPE="TEXT" ID="EMAIL" SIZE="40"/>
				</LABEL></TD>
			</TR>
			<TR>
				<TD WIDTH="69">CIDADE:</TD>
				<TD WIDTH="283"><LABEL>
				<INPUT NAME = "CIDADE" TYPE="CIDADE" ID="CIDADE" SIZE="40"/>
				</LABEL></TD>
			<TR>
				<TD>MENSSAGEM:</TD>
				<TD><LABEL>
					<TEXTAREA NAME="MENSSAGEM" ID="MENSSAGEM" COLS="31" ROWS="5"></TEXTAREA>
				</LABEL></TD>	
			</TR>
			<TR>
				<TD> </TD>
				<TD><LABEL>
					<INPUT TYPE="SUBMIT" NAME="BUTTON" ID="BUTTON" VALUE="CADASTRAR"/>
				</LABEL></TD>	
			</TR>
			</TR>
		</TABLE>


</FORM>
<?
}
?>

<?
if($_GET['funcao'] == "editar"){
$id = $_GET['id'];
$sql_update = mysql_query("SELECT * FROM tb_menssagem WHERE men_id = '$id' ");
while($linha = mysql_fetch_array($sql_update)){
	$nome = $linha['men_nome'];
	$email = $linha['men_email'];
	$cidade= $linha['men_cidade'];
	$menssagem = $linha['men_menssagem'];
}
?>
<FORM ID="MENSSAGEM" NAME="MENSSAGEM" METHOD="POST" ACTION="funcoes.php?funcao=editar&id=<? echo $id ?>">
		<TABLE WIDTH="362" BORDER="0">
			<TR>
				<TD WIDTH="69">NOME:</TD>
				<TD WIDTH="283"><LABEL>
				<INPUT NAME = "NOME" TYPE="TEXT" ID="NOME" SIZE="40" value="<? echo $nome ?>/>
				</LABEL></TD>
			</TR>
			<TR>
				<TD WIDTH="69">EMAIL:</TD>
				<TD WIDTH="283"><LABEL>
				<INPUT NAME = "EMAIL" TYPE="TEXT" ID="EMAIL" SIZE="40" value="<? echo $email ?>/>
				</LABEL></TD>
			</TR>
			<TR>
				<TD WIDTH="69">CIDADE:</TD>
				<TD WIDTH="283"><LABEL>
				<INPUT NAME = "CIDADE" TYPE="CIDADE" ID="CIDADE" SIZE="40" value="<? echo $cidade ?>/>
				</LABEL></TD>
			<TR>
				<TD>MENSSAGEM:</TD>
				<TD><LABEL>
					<TEXTAREA NAME="MENSSAGEM" ID="MENSSAGEM" COLS="31" ROWS="5"><? echo $menssagem ?></TEXTAREA>
				</LABEL></TD>	
			</TR>
			<TR>
				<TD> </TD>
				<TD><LABEL>
					<INPUT TYPE="SUBMIT" NAME="BUTTON" ID="BUTTON" VALUE="CADASTRAR"/>
				</LABEL></TD>	
			</TR>
			</TR>
		</TABLE>


</FORM>
<?
}
?>
<br />

<table width="783" border="0" cellpadding="3" cellspacing="3">
	<tr>
		<td width="603" align="center" bgcolor="#CCCCCC"><span class="style9">NOME</span></td>
		<td width="63" align="center" bgcolor="#CCCCCC"><span class="style9">EDITAR</span></td>
		<td width="87" align="center" bgcolor="#CCCCCC"><span class="style9">REMOVER</span></td>
	</tr>
	<?
	
	$sql_visualizar = mysql_query("SELECT men_id, men_nome FROM tb_menssagem ORDER BY men_nome");
	while($linha = mysql_fetch_array ($sql_visualizar)){
	$pega_nome = $linha['men_nome'];
	$id = $linha['men_id'];
	?> 
	<tr>
		<td><? echo $pega_nome ?></td>
		<td aling="center"><a href="form.php?funcao=editar&id=<? echo $id ?>">EDITAR</a></td>
		<td aling="center"><a href="form.php?funcao=excluir&id=<? echo $id ?>">REMOVER</a></td>
	</tr>
	<?
	}
	?>
</table>


</BODY>
</HTML>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fernando o erro indica que você está tentando usar o valor de $_GET['funcao'], sendo que esse valor não foi passado.

Faz o seguinte:

if(isset($_GET['funcao']) && ($_GET['funcao'] != "editar")){
//...
} else{
//...
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fernando o erro indica que você está tentando usar o valor de $_GET['funcao'], sendo que esse valor não foi passado.

Faz o seguinte:

if(isset($_GET['funcao']) && ($_GET['funcao'] != "editar")){
//...
} else{
//...
}

Leandro,

 

Obrigado pela ajuda funcionou a menssagem nao aparece mais por outro lado quando chamo meu form.php nao esta aparecendo o formulario estou usando o firefox. O que pode ser agora estou quebrando a cabeça.....

 

Fernando

Compartilhar este post


Link para o post
Compartilhar em outros sites

Posta o código alterado.

 

 

Segue o codigo alterado valeu pela ajuda,

<meta http-equiv="Content-Type" content = "text/html; charset=iso8859-1" />
<HTML>
<HEAD>
<TITLE>ENVIO DE MENSSAGEM</TITLE>
</HEAD>
<BODY>
<?
include "conexao.php";
if( isset($_GET['funcao']) && ($_GET['funcao'] != "editar")){
?>
<FORM ID="MENSSAGEM" NAME="MENSSAGEM" METHOD="POST" ACTION="funcoes.php?funcao=gravar">
		<TABLE WIDTH="362" BORDER="0">
			<TR>
				<TD WIDTH="69">NOME:</TD>
				<TD WIDTH="283"><LABEL>
				<INPUT NAME = "NOME" TYPE="TEXT" ID="NOME" SIZE="40"/>
				</LABEL></TD>
			</TR>
			<TR>
				<TD WIDTH="69">EMAIL:</TD>
				<TD WIDTH="283"><LABEL>
				<INPUT NAME = "EMAIL" TYPE="TEXT" ID="EMAIL" SIZE="40"/>
				</LABEL></TD>
			</TR>
			<TR>
				<TD WIDTH="69">CIDADE:</TD>
				<TD WIDTH="283"><LABEL>
				<INPUT NAME = "CIDADE" TYPE="CIDADE" ID="CIDADE" SIZE="40"/>
				</LABEL></TD>
			<TR>
				<TD>MENSSAGEM:</TD>
				<TD><LABEL>
					<TEXTAREA NAME="MENSSAGEM" ID="MENSSAGEM" COLS="31" ROWS="5"></TEXTAREA>
				</LABEL></TD>	
			</TR>
			<TR>
				<TD> </TD>
				<TD><LABEL>
					<INPUT TYPE="SUBMIT" NAME="BUTTON" ID="BUTTON" VALUE="CADASTRAR"/>
				</LABEL></TD>	
			</TR>
			</TR>
		</TABLE>


</FORM>
<?
}
?>

<?
if(isset($_GET['funcao']) && ($_GET['funcao'] == "editar")){
$id = $_GET['id'];
$sql_update = mysql_query("SELECT * FROM tb_menssagem WHERE men_id = '$id' ");
while($linha = mysql_fetch_array($sql_update)){
	$nome = $linha['men_nome'];
	$email = $linha['men_email'];
	$cidade= $linha['men_cidade'];
	$menssagem = $linha['men_menssagem'];
}
?>
<FORM ID="MENSSAGEM" NAME="MENSSAGEM" METHOD="POST" ACTION="funcoes.php?funcao=editar&id=<? echo $id ?>">
		<TABLE WIDTH="362" BORDER="0">
			<TR>
				<TD WIDTH="69">NOME:</TD>
				<TD WIDTH="283"><LABEL>
				<INPUT NAME = "NOME" TYPE="TEXT" ID="NOME" SIZE="40" value="<? echo $nome ?>/>
				</LABEL></TD>
			</TR>
			<TR>
				<TD WIDTH="69">EMAIL:</TD>
				<TD WIDTH="283"><LABEL>
				<INPUT NAME = "EMAIL" TYPE="TEXT" ID="EMAIL" SIZE="40" value="<? echo $email ?>/>
				</LABEL></TD>
			</TR>
			<TR>
				<TD WIDTH="69">CIDADE:</TD>
				<TD WIDTH="283"><LABEL>
				<INPUT NAME = "CIDADE" TYPE="CIDADE" ID="CIDADE" SIZE="40" value="<? echo $cidade ?>/>
				</LABEL></TD>
			<TR>
				<TD>MENSSAGEM:</TD>
				<TD><LABEL>
					<TEXTAREA NAME="MENSSAGEM" ID="MENSSAGEM" COLS="31" ROWS="5"><? echo $menssagem ?></TEXTAREA>
				</LABEL></TD>	
			</TR>
			<TR>
				<TD> </TD>
				<TD><LABEL>
					<INPUT TYPE="SUBMIT" NAME="BUTTON" ID="BUTTON" VALUE="CADASTRAR"/>
				</LABEL></TD>	
			</TR>
			</TR>
		</TABLE>


</FORM>
<?
}
?>
<br />

<table width="783" border="0" cellpadding="3" cellspacing="3">
	<tr>
		<td width="603" align="center" bgcolor="#CCCCCC"><span class="style9">NOME</span></td>
		<td width="63" align="center" bgcolor="#CCCCCC"><span class="style9">EDITAR</span></td>
		<td width="87" align="center" bgcolor="#CCCCCC"><span class="style9">REMOVER</span></td>
	</tr>
	<?
	
	$sql_visualizar = mysql_query("SELECT men_id, men_nome FROM tb_menssagem ORDER BY men_nome");
	while($linha = mysql_fetch_array ($sql_visualizar)){
	$pega_nome = $linha['men_nome'];
	$id = $linha['men_id'];
	?> 
	<tr>
		<td><? echo $pega_nome ?></td>
		<td aling="center"><a href="form.php?funcao=editar&id=<? echo $id ?>">EDITAR</a></td>
		<td aling="center"><a href="form.php?funcao=excluir&id=<? echo $id ?>">REMOVER</a></td>
	</tr>
	<?
	}
	?>
</table>


</BODY>
</HTML>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fernando,

não é necessário utilizar dois if's

 

Mantenha o primeiro

if( isset($_GET['funcao']) && ($_GET['funcao'] != "editar")){

remova esse trecho:

<?
}
?>

e troca isso:

if(isset($_GET['funcao']) && ($_GET['funcao'] == "editar")){
Por isso:

}else{

Explicando:

O isset verifica se foi definida a variavel 'funcao'. Como não foi passado valor no get ela não existe. Então, não será mostrado nenhum dos dois forms.

Utilizando o else, ele sempre mostrará um.

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.