Ir ao conteúdo

Formulario não funciona no LocalHost


luke_minotto

Posts recomendados

Postado

Olá Pessoal!

Instalei o EasyPHP de acordo com as dicas do Bomfim Cruz, mas estou com um probleminha e peço a ajuda dos craques do Clube do Hardware, please.

Criei um formulário em html que chama um arquivo PHP que irá gerenciar uma base de dados em MySql. Estou recriando um exemplo do livro "Desenvolvendo Websites com PHP4" do Juliano Niederauer da editora Novatec. O que acontece é que, após preencher o formulario e clicar em enviar, o arquivo php que processa o formulario diz o seguinte "Notice: Undefined variable: operacao" indica a linha e tal. A variaval operacao é um campo hidden do formulario que o arquivo php deveria transformar em variavel, mas não o esta fazendo. Alguem sabe como arrumar isso? Ja testei localmente até um formulario que se envia para meu email que sei q está funcionando, pois está hospedado e funciona e localmente na minha máquina dá o mesmo erro com as variáveis. Acredito que seja apenas uma configuração de algum arquivo .ini... por favor, help!

Desde já fico agradecido.

Lucas Minotto :help::muro:

Postado

Se você estiver usando o método GET, coloque a seguinte linha no começo do arquivo de destino :

$operacao=$_GET["operacao"];

Se você estiver usando o método POST, coloque a seguinte linha no começo do arquivo de destino :

$operacao=$_POST["operacao"];

utilize a variável $operacao em todo o restante do arquivo

Postado

Obrigado labcc.

Agora tô com outro problema o programa que recebe os dados não ta gravando na base em My SQL. To enviando o codigo fonte para veres se tem algo errado.:



<?php
 
 $operacao=$_POST["operacao"];
 
 include "conecta_mysql.inc";

 if ($operacao == "incluir")
     {
     $sql = "insert into 'produtos' ";
     $sql.= "values ($codigo, '$nome', '$descricao', $preco, $peso, $cc, $cs, '$ad')";
     $resultado = mysql_query ($conexao, $sql);
     echo "Produto incluído com sucesso!";

 }
 elseif ($operacao=="excluir")
     {
     $sql="delete from produtos where codigo_produto=$codigo";
     $resultado=mysql_query ($conexao, $sql);
     $linhas=mysql_affected_rows ($resultado);
     if($linhas==1)
         {echo "Produto escluído com sucesso!";}
     else
         {echo "Produto não encontrado!";}
   }
 elseif ($operacao=="mostrar")
 {
        $resultado=mysql_query($conexao, "select * from 'produtos'");
        $linhas=mysql_num_rows($resultado);
        echo "

[b]Lista de Produtos da Loja[/b]</p>";
        for ($i=o; $i<$linhas; $i++)
        {
             $reg=mysql_fetch_row($resultado,$i);
             echo"$reg[0]
$reg[1]
$reg[2]
$reg[3]
";
             echo"$reg[4]
$reg[5]
$reg[6]
$reg[7]

";
        }
  }

  mysql_close($conexao);

?>

Grato

Postado

Nesse caso eu não posso ajudar porque eu não entendo de MySQL. Eu sou iniciante em PHP e eu tive o mesmo problema que você citou sobre as variáveis, e um amigo meu me ensinou como fazer.

  • 3 meses depois...
Postado

nesse caso faltou os campos a serem gravados no mysql

$sql = "insert into 'produtos' ";

$sql.= "values ($codigo, '$nome', '$descricao', $preco, $peso, $cc, $cs, '$ad')";

o correto seria

$sql = "insert into produtos(campoCodigo,campoNome,campoDescricao,campoPreco,campoPeso,campoCc, campoCs,campoAd) ";

$sql.= "values ($codigo, '$nome', '$descricao', $preco, $peso, $cc, $cs, '$ad')";

os campos necessariamente devem estar na mesma ordem q as variaveis

espero q ajude!!!!

falou

Arquivado

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

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!