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

Problemas Com Variáveis Em Formulários


Guest Daniel

Pergunta

Preciso de ajuda!!!

Sou iniciante em PHP e estou tendo problemas...

Fiz um formulário simples de cadastro de usuários, mas não consigo tratar o conteúdo como uma variável...

Exemplo:

<form method="post" action="teste.php">

<input type="text" name="texto" size="20"><br>

<input type="text" name="numero" size="10"><br>

<input type="submit" name="sub" value="envia">

</form>

O meu script não deveria usar as variáveis $texto e $numero para se referirem ao digitado pelo usuário??

Por que comigo não funciona????

HELLLLLPPPPPPP!!!!!!!

Link para o comentário
Compartilhar em outros sites

18 respostass a esta questão

Posts Recomendados

  • 0

você tá rodando em seu computador ??? as vez pode ser configuração.

Tente usar isto e ver se tá funcionando o php...

<?

$msg=("Script Brasil");

echo("O site $msg, é um site muito acessado. Volte Sempre à $msg.");

?>

Se não aparecer a mensagem... o php não está rodando. ;)

Link para o comentário
Compartilhar em outros sites

  • 0

Engraçado, com o $_Post['texto'] funcionou, do outro não.

Agora como faria para utilizar essa variável numa query

tentei o seguinte comando:

$conexao=mysql_connect('localhost','root',' ');
mysql_select_db('teste',$conexao);
$comando="INSERT INTO teste (texto,num) VALUES ('$_POST['texto']', '$_POST['numero']');
mysql_query($comando, $conexao);

Mas nada aconteceu... a tabela e o banco de dados estão criados corretamente

Link para o comentário
Compartilhar em outros sites

  • 0

Não funciona não...

Dá uma olhada no meu código

<?
$conexao=mysql_connect('localhost', 'root', '222805') or die('Conexão falhou!');
mysql_select_db('banco_de_dados', $conexao) or die('Não conectou com DB');
$comando="INSERT INTO teste (texto,numero) VALUES ('$texto', $numero')";
mysql_query($comando, $conexao);
?>

O que poderia estar errado?

Eu simplesmente não entendo...

Li todo o material que pude encontrar na internet e todos diziam o mesmo que você... que bastava usar a variável $texto para um campo de name="texto"

Link para o comentário
Compartilhar em outros sites

  • 0

Pessoal, isto já tão falado mas aqui vai :D

As variáveis quando são envidas de um formulário estão disponíveis dentro da array $_POST, caso method="post".

Para facilitar a sua utilização foi implementado register_globals = On. O que essa definição fazia era mais ou menos isto:

extract($_POST);

Ou seja $_POST['nome'] iria estar disponivel como $nome.

Mas como traria muitos problemas de segurança esta directiva foi desligada por defeito - ligá-la, como já vi aqui no forum para o fazer, é totalmente desaconselhável.

Quanto às queries vou apenas dizer que tudo o que for texto tem que levar plicas ' e tudo o que for numeros não.

;)

Link para o comentário
Compartilhar em outros sites

  • 0

Amigo Vilela...

O PHP só suporta as variáveis assim diretamente, fora do $_POST até a versão 4.

Por isso é bom acostumar-se a usar o $_POST mesmo.

Em breve, com a versão 5, se fores atualizar o PHP com scripts usando diretamente as variáveis, terás que modificar todos os scripts que o fazem.

:D

Link para o comentário
Compartilhar em outros sites

  • 0

Você pode tentar isto também:

$texto = $_POST["texto"];
$numero = $_POST["numero"];
$conexao=mysql_connect('localhost','root',' ');
mysql_select_db('teste',$conexao);
$comando="INSERT INTO teste (texto,num) VALUES ('$texto', '$numero');
mysql_query($comando, $conexao);

Link para o comentário
Compartilhar em outros sites

  • 0

$st = $_POST["texto"];
$sn = $_POST["numero"];
/*
O s é de seguro. 
Não é seguro tratar a variável com o nome que ela recebeu no form
:D
*/
$sc = mysql_connect('localhost', 'root', ' ');
mysql_select_db('teste', $sc);
$scmd = "INSERT INTO teste (texto, num) VALUES (\"$st\", \"$sn\");
mysql_query($scmd, $sc);
/* aonde ambos os "esses" significam segurança.
Alguém poderia manipular o form, ou agir diretamente na barra de endereços.
Esemplo:
http://seu_site/arquivo.php?conexão=mysql_connect('servidor_do_invasor',%20'usuario_deste_banco',%20'password')
*/

Se aparecer em link passa o mouse e olha a barra de status :D

Editado por thb_matrix
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,3k
    • Posts
      652,5k
×
×
  • Criar Novo...