Ir para conteúdo

POWERED BY:

Arquivado

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

Dhy3ives

[Resolvido] Error com Formulario PHP usando Like para Consulta

Recommended Posts

Olá, montei um formulario para consulta usando um textfield com a instrucao like.

Porem ao se abrir a pagina, estou com o erro

 

Notice: Undefined index: nome in consulta.php on line 55

 

Porem apesar desse erro a consulta funciona normal, eu consigo achar todos os registros, mais os dados que sao encontrados nao estao vindo como esta no banco dados.

 

Imagem Postada

 

Esta me trazendo no campo usuario esse Array [usuario]

 

Codigo da pag php

 

<?php include ("conexao.php");

 ?>

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<style type="text/css">
<!--
.style4 {color: #0066FF; font-weight: bold; }
.style9 {color: #000000; font-weight: bold; font-style: italic; }
-->
</style>
</head>

<body>
<hr>
<table width="80%" border="0">
  <tr>
  <form id="form1" name="consulta" method="post" action="">
      <td>
  		Digita<input type="text" name="nome" id="nome" />
  		<input type="submit" name="button" id="button" value="Consultar" />
  
      </td>
  </form>
  </tr>
  <tr>
  <td>
  <table width="80%" border="0">
    <tr>
        <td>Nome</td>
        <td>Usuario</td>
        <td>Nivel</td>
        <td>status</td>
        </tr>
        
        	<?php
						
		if(!isset($nome)){
		$nome='';
		$bgcolor='';

		}

		$nome = $_POST["nome"];
		
		
			if(empty($nome)){
			
			}else {
			
			$sql = ("SELECT * FROM usuarios WHERE nome like '$nome%'"); 
				$query = mysql_query($sql);
				
				while($result= mysql_fetch_array($query))
				{

					if($bgcolor=="#DCDCDC")
						$bgcolor="#FFFFFF";
						else
						$bgcolor="#DCDCDC";
						print "
						<tr bgcolor = '#DCDCDC'>
						<td bgcolor = \"$bgcolor\"> $result[nome]  </td>
						<td bgcolor = \"$bgcolor\"> $result [usuario] </td>
						<td bgcolor = \"$bgcolor\"> $result[status]</td>
						<td bgcolor = \"$bgcolor\"> $result[nivel] </td>
						</tr>";
						
					
			}	
			}
			
			?>
        	
        
  </table>
  </td>
  </tr>
  
</table>

</body>
</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Altera essa parte ae..

 

<?php

                        if(empty($nome)){
                        
                        }else {
                        
                        $sql = ("SELECT * FROM usuarios WHERE nome like '".$nome%."'"); 
                                $query = mysql_query($sql);
                                
                                while($result= mysql_fetch_array($query))
                                {

                                        if($bgcolor=="#DCDCDC")
                                                $bgcolor="#FFFFFF";
                                                else
                                                $bgcolor="#DCDCDC";
                                                ?>
                                                <tr bgcolor = '#DCDCDC'>
                                                <td bgcolor = "<?=$bgcolor?>"> <?=$result[nome]?>		</td>
                                                <td bgcolor = "<?=$bgcolor?>"> <?=$result[usuario]?>	</td>
                                                <td bgcolor = "<?=$bgcolor?>"> <?=$result[status]?>		</td>
                                                <td bgcolor = "<?=$bgcolor?>"> <?=$result[nivel]?>		</td>
                                                </tr>
												<?
                                                
                                        
                        }       
                        }

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

o espaço

$result [usuario]//espaço aki entre $result e [usuario]
$result[usuario]//aki o certo

Funcionou belezinha Victor, putz nein vi que era o espaço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nao funcionou nao essa mudanca, o erro continua ainda, é na parte onde eu vou receber a variavel $nome vindo do textfield.

Tentei utilizar o isset, mais nao deu certo.

 

Notice: Undefined index: nome in consulta.php on line 48.

 

$nome = $_POST["nome"];

Compartilhar este post


Link para o post
Compartilhar em outros sites

olha ae agora

<?php
//recebe caso exista
$nome = isset($_POST['nome']) ? $_POST['nome'] : '';
if (!empty($nome)){//verifica se está vazio 
    $sql = ("SELECT * FROM usuarios WHERE nome like '{$nome}%'"); 
    $query = mysql_query($sql) or die(mysql_error());
    while($result= mysql_fetch_assoc($query)){
		//muda a cor das linhas
		$bgcolor = ($bgcolor == "#DCDCDC") ? "#FFFFFF" : "#DCDCDC";
        echo "<tr bgcolor ={$bgcolor}>";
			echo "<td>{$result['nome']}</td>";
			echo "<td>{$result['usuario']}</td>";
			echo "<td>{$result['status']}</td>";
			echo "<td>{$result['nivel']}</td>";
        echo "</tr>";
	}
	echo "</table>";
}
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nao funcionou nao essa mudanca, o erro continua ainda, é na parte onde eu vou receber a variavel $nome vindo do textfield.

Tentei utilizar o isset, mais nao deu certo.

 

Notice: Undefined index: nome in consulta.php on line 48.

 

$nome = $_POST["nome"];

 

 

 

 

 

altera ae

 


 <form id="form1" method="post" action="consulta.php">
      <td>
                Digita<input type="text" name="nome" value="" />
                <input type="submit" value="Consultar" />
  
      </td>
  </form>

 

também esse.

 


$nome = $_POST['nome'];
			
			if(empty($nome)){
				
				echo "Nome não foi preenchido!";
				
			
			}else{
				$sql = ("SELECT * FROM ususario WHERE nome like '".$nome%."'"); 
                $query = mysql_query($sql);
                                
                    while($result= mysql_fetch_array($query))
					{

                                        if($bgcolor=="#DCDCDC"){
                                                $bgcolor="#FFFFFF";
                                                }else{
                                                $bgcolor="#DCDCDC";
												}
                                                ?>
                                                <tr bgcolor = '#DCDCDC'>
                                                <td bgcolor = "<?=$bgcolor?>"> <?=$result[nome]?>               </td>
                                                <td bgcolor = "<?=$bgcolor?>"> <?=$result[usuario]?>            </td>
                                                <td bgcolor = "<?=$bgcolor?>"> <?=$result[status]?>             </td>
                                                <td bgcolor = "<?=$bgcolor?>"> <?=$result[nivel]?>              </td>
                                                </tr>                                                                              
			<?
					}
			}
		?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nao deu, o erro continua ainda sendo o mesmo, comentei a linha onde ocorre o erro.

O problema que eu acho que esta sendo e quando o formulário e carregado o método post tenta pegar o conteúdo da variável $nome, mais ela encontra-se vazia pois ainda nao foi feita a consulta.

Tanto que quando a consulta e feita o formulário nao retorna mas nenhum erro, tentei usar o isset() por causa disso mais nao resolveu.

 

<?php
					$nome = $_POST['nome'];   // O erro Continua sendo aqui nessa linha.
                        
                        if(empty($nome)){
                                
                                echo "Nome não foi preenchido!";
                                
                        
                        }else{
                                $sql = ("SELECT * FROM ususario WHERE nome like '$nome%'"); 
               							 $query = mysql_query($sql);
                                
                    while($result= mysql_fetch_array($query))
                                        {

                                        if($bgcolor=="#DCDCDC"){
                                                $bgcolor="#FFFFFF";
                                                }else{
                                                $bgcolor="#DCDCDC";
                                                                                                }
                                                ?>
                                                <tr bgcolor = '#DCDCDC'>
                                                <td bgcolor = "<?=$bgcolor?>"> <?=$result[nome]?>               </td>
                                                <td bgcolor = "<?=$bgcolor?>"> <?=$result[usuario]?>            </td>
                                                <td bgcolor = "<?=$bgcolor?>"> <?=$result[status]?>             </td>
                                                <td bgcolor = "<?=$bgcolor?>"> <?=$result[nivel]?>              </td>
                                                </tr>                                                                              
                        <?php
                                        }
                        }
 ?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Agora sim resolveu Victor Vlw ai.

So estava dando um erro no $bgcolor quando efetuava a pesquisa, mais ai eu ageitei.

 

 

Obrigado ai todos que deram o help.

 

Abracos

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.