Jump to content


Photo

Problemas Com $_post (valor Numérico)!


  • Faça o login para participar
36 replies to this topic

#31 Paulo Freitas

Paulo Freitas

    ××××××× LRU #456504 ××××××× ××××××× LRM #364686 ×××××××

  • Ex-Admins
  • 5612 posts
  • Sexo:Masculino
  • Localidade:Campinas - SP

Posted 13/11/2009, 08:51

Dê um print_r($_POST) e print_r($_GET) para ver se os valores foram passados corretamente. Cole o resultado aqui. ;)

A idéia é ótima. (y)

Eu sempre assumo que as coisas devem estar certas, ainda não me acostumei com a possibilidade de não estarem... :P

[]’sAté mais

#32 GmEnDeS

GmEnDeS

    Turista

  • Usuários
  • 50 posts
  • Sexo:Não informado

Posted 17/11/2009, 17:25

Obrigado Paulo Ricardo e '' sem.Ponto.

Pelo que verifiquei, ele recebe corretamente os dados do $_POST.
O problema é no $_GET do código, o Array não retorna nenhum valor nesta variável, já o $_POST retorna todos corretamente.

Página do formulário:
<?php
$codigo = $_GET['codigo'];
$consulta = mysql_query("select * from a_campo where ID = '".$codigo."'");

while ($row = mysql_fetch_assoc($consulta)) {
?>
<form action="editar.ben10" class="searchform" method="post" enctype="multipart/form-data" name="formlogin">
<label for="label3"></label><input name="nome" type="text" id="label3" size="40" maxlength="200" value="<?php echo $row["Nome"];?>" class="searchbutton" />
<label for="label"></label><input name="senha" type="text" id="label" size="20" value="<?php echo $row["Senha"];?>" maxlength="15" class="searchbutton" />
</form>

editar.ben10:
$codigo = $_GET['codigo'];

$bd = new PDO('mysql:dbname=xxxxx;host=xxxxx', 'xxxxxx', 'xxxxx');
$bd->setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, true);
$stmt = $bd->prepare("UPDATE a_campo` SET Senha = :senha, Nome = :nome where ID = :id");
$stmt->bindValue(':senha', $_POST['senha']);
$stmt->bindValue(':nome', $_POST['nome']);
$stmt->bindValue(':id', $codigo);

if ($stmt->execute()) {
	echo "Ok";
} else {
	print_r($stmt->errorInfo());
}

No action do form, eu deveria por algo relacionado à editar.ben10?codigo=5 ou não?

#33 Paulo Freitas

Paulo Freitas

    ××××××× LRU #456504 ××××××× ××××××× LRM #364686 ×××××××

  • Ex-Admins
  • 5612 posts
  • Sexo:Masculino
  • Localidade:Campinas - SP

Posted 17/11/2009, 17:27

No action do form, eu deveria por algo relacionado à editar.ben10?codigo=5 ou não?

Deveria. É justamente isso que precisa pro $_GET receber o codigo=5. :D

[]’sAté mais

#34 GmEnDeS

GmEnDeS

    Turista

  • Usuários
  • 50 posts
  • Sexo:Não informado

Posted 17/11/2009, 17:33

No action do form, eu deveria por algo relacionado à editar.ben10?codigo=5 ou não?

Deveria. É justamente isso que precisa pro $_GET receber o codigo=5. :D

[]’s


Problema resolvido.
Nossa, nem acredito que atrasei meu projeto 2 semanas por causa de um echo $row["ID"];.. São ossos do ofício!
Obrigado! :)

#35 '' sem.Ponto

'' sem.Ponto

    Super Veterano

  • Ex-Admins
  • 2098 posts
  • Sexo:Masculino
  • Localidade:Belo Horizonte

Posted 17/11/2009, 17:35

Viu só, sabia que com print_r a gente iria descobrir onde o problema estava... :P

Mas já que os valores são passados por um formulário, por que você não passa o código por POST invés de GET?
att,
Muller Dias
ex-administrador Fórum WMO

#36 GmEnDeS

GmEnDeS

    Turista

  • Usuários
  • 50 posts
  • Sexo:Não informado

Posted 17/11/2009, 17:37

Não sei muito bem o que o senhor quis dizer com passar o código com $_POST, mas eu utilizo o $_GET na página do formulário para obter as informações de um determinado cliente, exemplo:

cliente.php?codigo=3
cliente.php?codigo=6


O id 3 exibe informações do cliente 3, e o id 6 exibe informações do cliente 6.
Eu aprendi assim. ^_^

Muito obrigado à todos vocês pela ajuda dispensada em meu problema.

#37 '' sem.Ponto

'' sem.Ponto

    Super Veterano

  • Ex-Admins
  • 2098 posts
  • Sexo:Masculino
  • Localidade:Belo Horizonte

Posted 17/11/2009, 17:45

Ah sim... entendi. O formulário aparece quando acessa a página do cliente, e é na mesma página que é feito o update.

Então, você nem precisa informar nada no atributo action do <form>.

Basta fazer isso:

<form action="" class="searchform" method="post" enctype="multipart/form-data" name="formlogin">

Deixe o action vazio... (ok2)
att,
Muller Dias
ex-administrador Fórum WMO




2 user(s) are reading this topic

0 membro(s), 2 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq