Pessoal, sou nova na informática, e to fazendo uma rede social com php e pdo pra o tcc do meu curso, só que não consigo inserir dados no banco de dados, simplesmente não funciona, alguém pode me ajudar?
segue o código do formulário
<div id="formulario">
<?php
if (isset($_SERVER['REQUEST_METHOD']) AND $_SERVER['REQUEST_METHOD'] == 'POST'){ extract($_POST);
if($nome == '' OR strlen($nome)<2){ echo "Por favor, escreva seu nome corretamente"; } elseif ($sobrenome == '' OR strlen ($sobrenome)<2){ echo "Por favor, escreva seu sobrenome corretamente";
} else{ include ('_php/BD.class.php') ; $verificar =BD::getConn()->prepare("SELECT `id` FROM `usuarios` WHERE `email`=?"); if ($verificar->execute(array($email))){
if($verificar->rowCount()>=1){ echo "Este email já está cadastrado em nosso sistema"; } elseif(strlen($senha)<8){ echo "Digite uma senha de 8 caracteres no mínimo"; } else{ $senhaInsert = sha1($senha); $datanascimento="$dataNasc"; $inserir = BD::getConn()->prepare("INSERT INTO `usuarios` SET `email`=?, `senha`=?, `nome`=?, `sobrenome`=?,`sexo`=?, `datanascimento`=?, `cadastro`=NOW "); if ($inserir->execute(array($email,$senhaInsert,$nome,$sobrenome,$sexo,$datanascimento))) { header ('Location ./');
<div id ="cadastrar"> <b>Ou cadastre-se</b></br> <form name="cadastrar" method="post" action=""> <input type="text" name="nome" placeholder="Nome" class="form1" maxlength="40" value = "<?php echo $nome; ?>" required//> <input type="text" name="sobrenome" placeholder="Sobrenome" class="form1" maxlength="40" value = "<?php echo $sobrenome; ?>" required/><br/> <input type="email" name="email" placeholder="Email" class="form1" maxlength="30" value = "<?php echo $email; ?>"required/> <br/> <input type="password" name="senha" placeholder="Senha" class="form1" maxlength="10" required/><br/> Data de nascimento <br/> <input type ="date" name="dataNasc" class = "form1" required> Feminino <input type="radio" name="sexo" class="form1" value = "Feminino" required/> Masculino<input type="radio" name="sexo" class="form1" value = "Masculino" required/><br/> <input type="submit" name="cadastrar" class="bt" maxlength="10" / ><br/> </form> </div>
e o código da conexão com o BD...
<?php class BD{ private static $conn; static function getConn(){ if (is_null (self::$conn)) { self::$conn = new PDO('mysql:host=localhost;dbname=asasparaajudar','root',''); } return self::$conn;
Pergunta
GabiGui
Pessoal, sou nova na informática, e to fazendo uma rede social com php e pdo pra o tcc do meu curso, só que não consigo inserir dados no banco de dados, simplesmente não funciona, alguém pode me ajudar?
segue o código do formulário
<div id="formulario">
<?php
if (isset($_SERVER['REQUEST_METHOD']) AND $_SERVER['REQUEST_METHOD'] == 'POST'){
extract($_POST);
if($nome == '' OR strlen($nome)<2){
echo "Por favor, escreva seu nome corretamente";
}
elseif ($sobrenome == '' OR strlen ($sobrenome)<2){
echo "Por favor, escreva seu sobrenome corretamente";
}
else{
include ('_php/BD.class.php') ;
$verificar =BD::getConn()->prepare("SELECT `id` FROM `usuarios` WHERE `email`=?");
if ($verificar->execute(array($email))){
if($verificar->rowCount()>=1){
echo "Este email já está cadastrado em nosso sistema";
}
elseif(strlen($senha)<8){
echo "Digite uma senha de 8 caracteres no mínimo";
}
else{
$senhaInsert = sha1($senha);
$datanascimento="$dataNasc";
$inserir = BD::getConn()->prepare("INSERT INTO `usuarios` SET `email`=?, `senha`=?, `nome`=?, `sobrenome`=?,`sexo`=?, `datanascimento`=?, `cadastro`=NOW ");
if ($inserir->execute(array($email,$senhaInsert,$nome,$sobrenome,$sexo,$datanascimento)))
{
header ('Location ./');
}
}
}
}
}
?>
<div id = "entrar">
<form name="entrar" method="post" action="_php/BD.class.php">
<input type="email" name="email" placeholder="Email" class="form1" maxlength="30" required> <br/>
<input type="password" name="senha" placeholder="Senha" class="form1" maxlength="10" required><br/>
<input type="submit" name="entrar" class="bt" value="Entrar" maxlength="10"><br/>
</form>
</div>
<div id ="cadastrar">
<b>Ou cadastre-se</b></br>
<form name="cadastrar" method="post" action="">
<input type="text" name="nome" placeholder="Nome" class="form1" maxlength="40" value = "<?php echo $nome; ?>" required//>
<input type="text" name="sobrenome" placeholder="Sobrenome" class="form1" maxlength="40" value = "<?php echo $sobrenome; ?>" required/><br/>
<input type="email" name="email" placeholder="Email" class="form1" maxlength="30" value = "<?php echo $email; ?>"required/> <br/>
<input type="password" name="senha" placeholder="Senha" class="form1" maxlength="10" required/><br/>
Data de nascimento <br/>
<input type ="date" name="dataNasc" class = "form1" required>
Feminino <input type="radio" name="sexo" class="form1" value = "Feminino" required/>
Masculino<input type="radio" name="sexo" class="form1" value = "Masculino" required/><br/>
<input type="submit" name="cadastrar" class="bt" maxlength="10" / ><br/>
</form>
</div>
e o código da conexão com o BD...
<?php
class BD{
private static $conn;
static function getConn(){
if (is_null (self::$conn)) {
self::$conn = new PDO('mysql:host=localhost;dbname=asasparaajudar','root','');
}
return self::$conn;
}
}
?>
Link para o comentário
Compartilhar em outros sites
7 respostass a esta questão
Posts Recomendados
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.