Galera deu um erro na inserção

25/04/2016

0

PHP

Galera eu to tentado fazer cadastro pelo site em pdo, porém ele exibe a mensagem de que o cadastro foi feito porém quando vou no banco num tem nada lá pq isso ocorre?

<form id="form1" name="form1" method="post" action="cadastro.php">

<p>Nome: <input name="email" type="text" id="nome" /></p>
<p>Email: <input name="email" type="text" id="email" /></p>
<p>Senha: <input type="text" name="senha" /></p>

<input type="submit" name="post_back" id="button" value="Cadastrar" />
</form>


<?php

session_start();
require("config.php");

if(isset($_REQUEST["post_back"])){

    if(empty($_POST&["nome"]) || empty($_POST&["email"]) || empty($_POST&["senha"])){

        echo "<script>alert('Preencha todos os campos antes de enviar seu cadastro!');</script>";

    }else{
        $tb = $conn->prepare("insert* into usuario(nm_usuario, email_usuario, senha_usuario) values(:nome, :email, :senha)");
        $tb->bindParam(":nome", $_POST["nm_usuario"], PDO::PARAM_STR);
        $tb->bindParam(":email", $_POST["email_usuario"], PDO::PARAM_STR);
        $tb->bindParam(":senha", $_POST["senha_usuario"], PDO::PARAM_STR);
        $tb->execute();
        $tb = null;

        echo "<script>alert('Cadastro efetuado com sucesso!\\nFaça seu login agora');document.location='index.php';</script>";

    }

}
?>
Hiago Orneles

Hiago Orneles

Responder

Posts

26/04/2016

William

Hiago não me leve a mal, mas você não está analisando o código com atenção.

Contínua errado, esses names não existem!!!
$tb->bindParam(":nome", $_POST["nm_usuario"], PDO::PARAM_STR);
$tb->bindParam(":email", $_POST["email_usuario"], PDO::PARAM_STR);
$tb->bindParam(":senha", $_POST["senha_usuario"], PDO::PARAM_STR);
Responder

26/04/2016

Hiago Orneles

Então eu troco esses

$tb->bindParam(":nome", $_POST["nm_usuario"], PDO::PARAM_STR);
$tb->bindParam(":email", $_POST["email_usuario"], PDO::PARAM_STR);
$tb->bindParam(":senha", $_POST["senha_usuario"], PDO::PARAM_STR);


por esses ?

$tb->bindParam(":nome", $_POST["nome"], PDO::PARAM_STR);
$tb->bindParam(":email", $_POST["email"], PDO::PARAM_STR);
$tb->bindParam(":senha", $_POST["senha"], PDO::PARAM_STR);
Responder

26/04/2016

Marlon Gera

Mano, me explica uma coisa esta pagina que você esta mostrando, qual o nome dela? Seria cadastro.php?
Por que você está colocando uma action pra uma página, se você esta fazendo a inserção de dados na mesma pagina?

<form id="form1" name="form1" method="post" action="cadastro.php">


Não entendi esta parte...
Responder

26/04/2016

William

Exato, os names no POST tem que ser correspondentes aos names do form HTML!!!
Responder

26/04/2016

Hiago Orneles

Mano, me explica uma coisa esta pagina que você esta mostrando, qual o nome dela? Seria cadastro.php?
Por que você está colocando uma action pra uma página, se você esta fazendo a inserção de dados na mesma pagina?

<form id="form1" name="form1" method="post" action="cadastro.php">


Não entendi esta parte...


Coloque isso pq caso eu não coloque , a pagina não enviar os dados eu fico clicando no botão e não acontece nada
Responder

26/04/2016

Hiago Orneles

Funcionou aki era só essas variveis

$tb->bindParam(":nome", $_POST["nm_usuario"], PDO::PARAM_STR);
$tb->bindParam(":email", $_POST["email_usuario"], PDO::PARAM_STR);
$tb->bindParam(":senha", $_POST["senha_usuario"], PDO::PARAM_STR);


$tb->bindParam(":nome", $_POST["nome"], PDO::PARAM_STR);
$tb->bindParam(":email", $_POST["email"], PDO::PARAM_STR);
$tb->bindParam(":senha", $_POST["senha"], PDO::PARAM_STR);


vlw ai Willian
Responder

26/04/2016

William

Ufa, que sofrimento!!

Estou finalizando o post.
Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar