Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Bom pessoal, estou criando um projetinho e estou com dificuldades de encontrar a solução para o erro que apareçe na tela...
eu já coloquei esse código para verificar outros erros e não apareceu nada.
ini_set( 'display_errors', true );
error_reporting( E_ALL );
O erro é o seguinte:
Undefined variable: nome in C:\wamp\www\projeto\index.php on line 85 Call Stack #TimeMemoryFunctionLocation 10.0014711600{main}( )..\index.php:0 " />
também aparecendo na caixa de texto:
<br /><font size='1'><table class='xdebug-error' dir='ltr' border='1' cellspacing='0' cellpadding='1'><tr><th align='left' bgcolor='#f57900' colspan=
Segue o código:
<?php
<!-- Display de erros -->
ini_set( 'display_errors', true );
error_reporting( E_ALL );
<!-- Sessão do captcha -->
session_start();
<!-- Classe de conexão -->
include('class/Connection.class.php');
if (isset($_SERVER['REQUEST_METHOD']) AND $_SERVER['REQUEST_METHOD'] == 'POST') {
extract($_POST);
if ($nome == '' OR strlen($nome) < 4) {
echo 'Todos os campos devem ser preenchidos';
} elseif ($email == '') {
echo 'Todos os campos devem ser preenchidos';
} elseif (!preg_match("/^([[:alnum:]_.-]){3,}@([[:lower:][:digit:]_.-]{3,})(\.[[:lower:]]{2,3})(\.[[:lower:]]{2})?$/", $email)) {
echo 'O e-mail digitado não é válido.';
} else {
$verificar = Connection::getConnection()->prepare("SELECT id_usuario FROM usuarios WHERE email = ?");
if ($verificar->execute(array($email))) {
if ($verificar->rowCount() >= 1) {
echo 'Este email já está cadastrado em nosso sistema';
} elseif ($senha == '' OR strlen($senha) < 4) {
echo 'Todos os campos devem ser preenchidos';
} elseif ($dia == 'Dia') {
echo 'Escolha um dia válido para a data de nascimento';
} elseif ($mes == 'Mes') {
echo 'Escolha um mês válido para a data de nascimento';
} elseif ($ano == 'Ano') {
echo 'Escolha um ano válido para a data de nascimento';
} elseif (strtolower($captcha) <> strtolower($_SESSION['captchaCadastro'])) {
echo 'O código digitado não é correspondente com o da imagem';
} else {
$Isenha = sha1($senha);
$dt_nascimento = "$ano-$mes-$dia";
$inserir = Connection::getConnection()->prepare("INSERT INTO usuarios SET nome = ?, email = ?, senha = ?, sexo = ?, dt_nascimento = ?, dt_cadastro = NOW()");
if ($inserir->execute(array($nome, $email, $Isenha, $sexo, $dt_nascimento))) {
header("Location: privado.php");
}
}
}
}
}
?>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="template/css/commom.css" rel="stylesheet" type="text/css" />
<link href="template/css/commom-login.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="lib/js/jQuery-1.7.1-min.js"></script>
<script type="text/javascript">
$(function(){
$('#troca_imagem').click(function(){
$('#img_captcha').load('captcha/imagem_seguranca.php');
});
});
</script>
<title>cadastro</title>
</head>
<body>
<div id="pg">
<header>
<div id="wrapper">
<img src="template/images/logo/logo-1.png" width="246px" height="115px" />
</div>
</header>
<div id="content">
<div id="wrapper">
<div id="box-left">
<h1>Cadastre-se</h1>
<h4>Ao prosseguir com o cadastro, você estará automaticamente aceitando os <a href="termos.php">termos de compromisso</a> do site.</h4>
<form name="cadastro" action="" method="post" id="form-cadastro">
<span>Nome completo</span> <br/>
<input type="text" name="nome" value="<?php echo $nome ?>" />
<br/><br/>
<span>E-mail</span> <br/>
<input type="text" name="email" value="<?php echo $email ?>" />
<br/><br/>
<span>Senha</span> <br/>
<input type="password" name="senha" value="<?php echo $senha ?>" />
<br/><br/>
<span>Gênero</span> <br/>
<select class="genero" name="sexo">
<option value="Masculino">Masculino</option>
<option value="Feminino">Feminino</option>
</select>
<br/><br/>
<span>Data de nascimento</span> <br/>
<div class="data-nascimento">
<select class="dia" name="dia">
<option>Dia</option>
<?php
for ($d = 1; $d <= 31; $d++) {
$zero = ($d < 10) ? 0 : '';
echo '<option value="', $zero, $d, '">', $zero, $d, '</option>';
}
?>
</select>
<select class="mes" name="mes">
<option>Mês</option>
<?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 : '';
echo '<option value"', $zero, $m, '">', $meses[$m], '</option>';
}
?>
</select>
<select class="ano" name="ano">
<option>Ano</option>
<?php
for ($a = date('Y'); $a >= (date('Y') - 100); $a--) {
echo '<option value"', $a, '">', $a, '</option>';
}
?>
</select>
</div>
<br/><br/>
<div id="captchaCadastro">
<span>Verificação de segurança</span><br/>
<h4> Não consegue visualizar a imagem? <a href="#imagem" id="troca_imagem">Clique aqui</a></h4>
<br/>
<span id="img-captcha">
<?php require_once "captcha/imagem_seguranca.php"; ?>
</span>
<div class="input-captcha">
<span>Digite o texto ao lado</span>
<br/>
<input type="text" name="captcha" />
</div>
</div>
<br/>
<input type="submit" value="Cadastre-se"/>
</form>
</div>
<div id="box-right">
<div class="align">
<h1>Acesse sua conta.</h1>
<form name="login" action="" id="form-login">
<span>E-mail</span> <br/>
<input type="text" name="email"/>
<br/><br/>
<span>Senha</span> <br/>
<input type="password" name="senha" />
<br/><br/>
<input type="submit" value="Login"/>
<br/><br/>
<a href="">Não consegue acessar sua conta?</a>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
<footer>
<div id="wrapper">
<img src="template/images/logo/logo-footer.png" />
<a href="sobre.php">Sobre</a>
<a href="ajuda.php">Ajuda</a>
</div>
</footer>
</body>
</html>
Eu fiz alguns testes de inserção no banco de dados e funcionou tranquilo..
Esse é o código do arquivo de conexão com o banco:
<?php
class Connection {
private static $connect;
static function getConnection() {
if (is_null(self::$connect)) {
self::$connect = new PDO('mysql:host=localhost;dbname=projeto', 'root', '');
}
return self::$connect;
}
}
?>
Lembrando que esse erro só apareço no campo "nome", "email" e "senha".
Se alguém puder me ajudar ou até mesmo fazer algumas críticas sobre o código, agradeço muito!
Valeeu!
Carregando comentários...