Ir para conteúdo
Fórum Script Brasil
  • 0

Erro Na Consulta


dennisreis

Pergunta

Bom dia Pessoal!

Ainda estou apanhando com a declaração de variáveis, olha só esse código:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<HTML>

<HEAD>

<TITLE>((((((((((((((((((((C O N S U L T A))))))))))))))))))))</TITLE>

<META NAME="GENERATOR" CONTENT="MAX's HTML Beauty++ 2004">

</HEAD>

<BODY bgcolor="#FFFFFF">

<?

var $nome;

$nome=trim($nome);


if(empty($nome))
{
	$html = file("consulta.html");
	$html = implode("",$html);
	$erro = "<center><font color=\"#FF0000\">Preencha o campo<b>nome</b></font></center>";
	$html = str_replace("<!mensagem>",$erro,$html);
	echo ($html);

}//fim do 1.º IF

else
{
	echo("<p><center><img src=\"por_do_sol.jpg\" width=\"200\" heigth=\"50\"></center></p>");

	//cria uma conexão com o mysql
	//parâmetros: host, usename, senha

	$conec = mysql_connect ("localhost","","");

	//Declaração do SQL

	$declar = "SELECT cargo, telefone, email from alunos where nome = '$nome'";

	// roda a query e verifica se encontrou registro

	$query = mysql_db_query ("telecentros", $declar, $conec) or die ("Erro no acesso ao Banco");

	$achou = mysql_num_rows($query);

	//echo ($achou);
	//Se encontrou, guarda as variáveis

	if($achou > 0 )
	{
  $row = mysql_fetch_row ($query);
  $cargo = $row[0];
  $telefone = $row[1];
  $email = $row[2];
  
  echo("<br>");
  
  echo ("<table widtth=\"400\" borde=\"3\" align=\"center\" bodercolor=\"#808080\" Bbordercolorlight=\"#008080\" bodercolordark=\"#33CCCC\" cellspacing=\"0\"><tr><td>");
  echo ("<b>Resultado da consulta</b>");
  echo ("<br><br>");
  echo ("<tr><td><b>Nome:</b>$nome</td></tr>");
  echo ("<tr><td><b>Cargo:</b>$cargo</td></tr>");
  echo ("<tr><td><b>Telefone:</b>$telefone</td></tr>");
  echo ("<tr><td><b>Nome:</b>$nome</td></tr>");
  echo ("<tr><td><b>E-mail:</b>$email</td></tr>");
  echo ("</td></tr></table>");
  echo ("<center><b><a href=\"consulta.html\" onmouseover=\"window.status='Consulta'; return true;\">Voltar</a></b></center>");

	}//fim do 2.º IF  

	else
	{
  echo ("<br>");
  echo ("<center><b>Aluno não Cadastrado</b></center>");
  echo ("<br>");
  echo ("<center><b><a href=\"consulta.html\" onmouseover=\"window.status='Consulta'; return true;\">Voltar</a></b></center>");

	}//fim do 2.º ELSE	

}//fim do 1.º ELSE

?>

</BODY>

</HTML>

Está dando um erro justamente na var $nome;

Qual é o jeito certo de declara uma variavel afinal?

Eu sei que posso declarar ela direto como $nome="oi", mais é nesse caso, como faço?

abraços,

Dennis

Link para o comentário
Compartilhar em outros sites

10 respostass a esta questão

Posts Recomendados

  • 0

olá....

no php não tem essa de declaração por tipos??

em qualquer outra linguagem agente define se é string, numerico ou algo assim, no php eu não vi isso..

tipo...existe como se declarar variaveis por tipos no php??

pra q serve aquele "$" q tem sempre antes de cada variavel???

e qual é o tipo de variavel q se tem quando não se declava a variavel??no visual basic quando você não define o nome da variavel ela vem como "variant" no php é tb assim???

Link para o comentário
Compartilhar em outros sites

  • 0

Não tem esse esquema de definir, a variável assume o tipo da informação que você dá a ela. Se você dá um valor inteiro, ela é int, se dá um float, ela é float, se dá uma string, ela é uma string... smile.gif

Não tem como setar o tipo, mas depois tem algumas formas de converter.

estou ciente que as outras linguagens funcionam dessa forma, mas o PHP é a ovelha negra mesmo, não se declara variável. Só em classes e mesmo assim não tem a função de dizer o tipo da variável e sim deixar ela disponível em toda a classe, funciona meio como um "global".

Então, se não estiver na classe, não declare.

O $ não serve pra nada, serve pra dizer que aquilo é uma variável e não uma constante.

Link para o comentário
Compartilhar em outros sites

  • 0

if($achou > 0 )

{

$row = mysql_fetch_row ($query);

$cargo = $row[0];

$telefone = $row[1];

$email = $row[2];

echo("<br>");

/* ... */

Você não está setando a variável $nome aqui. Por isso qunado você chama o php diz q ela não foi iniciada. Se você quiser iniciar ela nula. use $nome = null; Mas acho que você só esqueceu de atribuir um valor que retornou do banco para a tua variável.

Link para o comentário
Compartilhar em outros sites

  • 0

Cara, esquece declaração de variável... Esquece isso. happy.gif

Não existe no PHP.

Se você dá um:

$foo = 20;

Você acabou de criar uma variável INTEGER

Se você dá um:

$foo = 20.7;

Você acabou de criar uma variável FLOAT

Se você dá um:

$foo = "Hello World";

Você acabou de criar uma variável STRING

E assim por diante.

Você não declara ela. Ela passa a existir quando você atribui um valor pra ela.

Mais então que dizer que eu posso delcara ela como nula e depois atribuir alguma coisa?

Pode... mas não tem qualquer utilidade, é código inútil... smile.gif

Link para o comentário
Compartilhar em outros sites

  • 0

Bom, cara. Nada dá certo por acaso. Você tem que saber o que está fazendo quando vai programar. Esse esquema de "Pus isso, não sei o que faz mas funciona" não dá certo.

Não sei onde você pôs isso, mas isso aí está dando à variável $nome o valor que vem de um campo de um formulário name='nome' ou uma variável passada via query string ( pagina.php?nome=valor ).

Acho que você precisa explicar melhor o que você quer fazer e talvez dar uma reestruturada no seu script... smile.gif

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,9k
×
×
  • Criar Novo...