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

(Resolvido) Fatal error com a função mysql_fetch()


Pedro Augusto

Pergunta

Olá, estou tentando exibir a informação do bd que for solicitada no formulário. Mas dá esse erro:

Fatal error: Call to undefined function mysql_fetch() in /home/batistas/public_html/test/03.php on line 20.

A linha 20 é: while($linha = mysql_fetch_array($query))

Alguém sabe o que é???

<form name="choose" method="post" action="?acao=show">
<select name="nid">
      <option value="4">Um</option>
      <option value="11">Dois</option>
      <option value="12">Três</option>
<input type="submit" value="Abrir">
</form>
<?
        include('config.php');

        if($_GET['acao'] == "show") {
            mysql_connect("$dbhost","$dbuser","$dbpass");
             mysql_select_db("$dbname");

              $nid = $_POST['nid'];
            $sql = mysql_query("SELECT * FROM noticias WHERE id='$nid'");

            $query = mysql_query($sql);

    while($linha = mysql_fetch_array($query))
    {
        # Mostra os dados que estao no Banco de Dados
        echo "<p><b>" . $linha["id"] . " | " . $linha["titulo"] . "</b><br /><i>" . $linha["data"] . " - " . $linha["hora"] . "</i></p>
        <p>" . $linha["corpo"] . "</p>
        <p><input type='hidden' name=\"id\" value=\"" . $linha["id"] . "\"></p>";
    }
    }
?>

Obrigado desde já... Pedro Augusto

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

você tá fazendo a query 2 vezes....

tira a linha : $query = mysql_query($sql);

e troca a : while($linha = mysql_fetch_array($query)) por: while($linha = mysql_fetch_array($sql)) ..

deve funcionar...

Antres de fazer o while.. é smepre bom fazer um if p/ ver se retorna algum resultado..

Link para o comentário
Compartilhar em outros sites

  • 0

Beleza, agora está tudo ok! Muito obrigado... O código corrigido ficou assim:

<form name="choose" method="post" action="?acao=show">
<select name="nid">
      <option value="4">Um</option>
      <option value="11">Dois</option>
      <option value="12">Três</option>
<input type="submit" value="Abrir">
</form>
<?
        include('config.php');

        if($_GET['acao'] == "show") {
            mysql_connect("$dbhost","$dbuser","$dbpass");
             mysql_select_db("$dbname");

              $nid = $_POST['nid'];
            $sql = mysql_query("SELECT * FROM noticias WHERE id='$nid'");

            while($linha = mysql_fetch_array($sql))
    {
        # Mostra os dados que estao no Banco de Dados
        echo "<p><b>" . $linha["id"] . " | " . $linha["titulo"] . "</b><br /><i>" . $linha["data"] . " - " . $linha["hora"] . "</i></p>
        <p>" . $linha["corpo"] . "</p>
        <p><input type='hidden' name=\"id\" value=\"" . $linha["id"] . "\"></p>";
    }
    }
?>

Link para o comentário
Compartilhar em outros sites

  • 0

Eu ainda colocaria um If ai p/ evitar qlqr tipo de erro..

ASSIM:

<form name="choose" method="post" action="?acao=show">
<select name="nid">
      <option value="4">Um</option>
      <option value="11">Dois</option>
      <option value="12">Três</option>
<input type="submit" value="Abrir">
</form>
<?
        include('config.php');

        if($_GET['acao'] == "show") {
            mysql_connect("$dbhost","$dbuser","$dbpass");
             mysql_select_db("$dbname");

              $nid = $_POST['nid'];
            $sql = mysql_query("SELECT * FROM noticias WHERE id='$nid'");

          if(mysql_fetch_array($sql)){
            $sql = mysql_query("SELECT * FROM noticias WHERE id='$nid'");
            while($linha = mysql_fetch_array($sql)) {
                  # Mostra os dados que estao no Banco de Dados
                  echo "<p><b>" . $linha["id"] . " | " . $linha["titulo"] . "</b><br /><i>" . $linha["data"] . " - " . $linha["hora"] . "</i></p>
                  <p>" . $linha["corpo"] . "</p>
                  <p><input type='hidden' name=\"id\" value=\"" . $linha["id"] . "\"></p>";
            }
           }
    }
?>

Pelo menos assim evita qlqr erro... Pode colocar um else p/ exibir uma msg tipo "nenhum dado encontrado" ou coisa do tipo...

Editado por Evandro Fontes
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.8k
×
×
  • Criar Novo...