Com PDO!
Bom pessoal estou comecando a estuda programacao orientada a objeto e estou tentando inserir dados em uma tabela no banco de dados mas nao consigo nao insere mas o codigo executa perfeitamente!!
Codigo cadastro.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>form</title>
<link rel="stylesheet" type="text/css" href="styles/cadastro.css" media="all" /><!--[if IE]>
<style type="text/css" media="all">.borderitem {border-style: solid;}</style>
<![endif]-->
</head>
<body>
<div id="Div"><!-- div topo -->
<img src="img/logo.png" alt="logo" />
<div class="Txt_Site">
</div><!-- fim Txt_Site -->
</div><!-- fim topo -->
<div id="Div2"><!-- fundo form -->
</div><!-- fim fundo form -->
<div class="Txt_Sobrenome">
<p class="lastNode">Sobrenome:
</p>
</div><!-- fim Txt_Sobrenome -->
<div class="Txt_Nome">
<p class="lastNode">Nome:
</p>
</div><!-- fim Txt_Nome -->
<div class="Txt_Eu">
<p class="lastNode">Eu sou:
</p>
</div>
<div id="Linha">
</div>
<div class="Txt_Data">
<p class="lastNode">Data de nascimento:
</p>
</div><!-- fim Txt_Data" -->
<div id="Linha2">
</div>
<div class="Txt_meu">
<p class="lastNode">meu email:
</p>
</div>
<div id="Linha3">
</div>
<div class="Txt_Senha">
<p class="lastNode">Senha:
</p>
</div>
<div id="Linha4">
</div>
<div class="Txt_Digite">
<p class="lastNode">Digite os caracteres ao lado!
</p>
</div>
<div class="Txt_Captcha">
<p class="lastNode">Captcha:
</p>
</div>
<div id="Linha5">
</div>
<div class="Txt_Cadastrar">
<p class="lastNode">Cadastrar
</p>
</div>
<div class="captchafloat">
<img src="captcha/captcha.php" />
</div>
<form name="cadastro" method="post" action="#">
<div align="center">
<?php
if(isset($_SERVER['REQUEST_METHOD']) AND $_SERVER['REQUEST_METHOD'] == 'POST'){
extract($_POST);
if($nome == '' OR strlen($nome)<4){
echo "Escreva seu nome corretamente";
}else if($sobrenome == '' OR strlen($sobrenome)<4){
echo'Escreva seu sobrenome corretamente!';
}/*else if($email == ''){
echo 'Escreva seu email';
}else if(!preg_match("/^[A-Z0-9._%-]+@[A-Z0-9._%-]+\.[A-Z]{2,4}$",$email)){
echo 'Este email é invalido';
}*/else{
session_start();
include('classes/DB.class.php');
$verificar = DB::getConn()->prepare("SELECT `id` FROM `usuarios` WHERE `email`=?") ;if($verificar->execute(array($email))){
if($verificar->rowCount()>=1){
echo'Este email já esta cadastrado em nosso sistema';
}elseif($senha == '' OR strlen($senha)<4){
echo"Sua senha precisa ter mais de quatro caracteres!";
}elseif(strtolower($captcha) <> strtolower($_SESSION['captchaCadastro'])){
echo'O codigo digitado no captcha não corresponde com o da imagem'.$captcha;
}else{
$senha = sha1($senha);
$nascimento = "$ano-$mes-$dia";
$inserir = DB::getConn()->prepare("INSERT INTO `usuarios` SET `email`=?, `senha`=?, `nome`=?, `sobrenome`=?, `sexo`=?, `nascimento`=? `cadastro`=NOW()");
if($inserir->execute(array($email,$senhaInsert,$nome,$sobrenome,$sexo,$nascimento)));{
print "<meta http-equiv=\"refresh\" content=\"0;URL=./\">";
}
}
}
}
}
?>
</div>
<input type="text" class="inputnome" name="nome" value="<?php echo isset($nome) ? $nome:'';?>" />
<input type="text" name="sobrenome" class="inputsobrenome" value="<?php echo isset($nome) ? $sobrenome:'';?>" />
<select name="sexo" class="select_sexo" />
<option value="masculino">Masculino</option>
<option value="feminino">Feminino</option>
</select>
<select name="dia" class="input_data" />
<?php for($d=1;$d<=31;$d++) {
$zero = ($d<10) ? 0 : '';
if($d == $zero.$d){
echo '<option selected="selected" value="',$zero,$d,'">',$zero,$d,'</option>';
}else{
echo '<option value="',$zero,$d,'">',$zero,$d,'</option>';
}
}
?><option value=""></option>
</select>
<select name="mes" class="input_mes" />
<?php
$meses = array('','Janeiro','Fevereiro','Março','Abril','Maio','Junho','Julho','Agosto','Setembro','Outubro','Novembro','Dezembro');
for ($m=1;$m<=12;$m++){
$zero = ($m<10) ? 0 : '';
if($zero.$m == $meses){
echo '<option selected="selected" value="',$zero,$m,'">',$meses[$m],'</option>';
}else{
echo '<option value="',$zero,$m,'">',$meses[$m],'</option>';
}
}
?>
<option value=""></option>
</select>
<select name="ano" class="input_ano" />
<?php
for($a=date('Y');$a>=(date('Y')-100);$a--){
echo "<option value='$a'>$a</option>";
}
?>
</select>
<input type="text" class="input_email" name="email" value="<?php echo isset($email) ? $email:'';?>" />
<input type="password" class="input_senha" name="senha" value="<?php echo isset($senha) ? $senha:'';?>" />
<input type="text" class="input_captcha" name="captcha" />
<input type="submit" class="input_bottom" value="Cadastrar" />
<!--<input type="reset" class="input_bottom_cancelar" value="Limpar" />-->
</form>
</body>
</html>
e o DB.class.php
<?php
class DB {
private static $conn;
static function getConn() {if(is_null(self::$conn)){
self::$conn = new PDO('mysql:host=localhost;dbname=voemerco_social','voemerco_social','social');
}
return self::$conn;
}
}
?>
Mas nao funciona o que tem de errado galeraa???
Discussão (6)
Carregando comentários...