buenas tardes tengo un inconveniente con el envio de datos desde mi formulario de registro el cual al dar enviar me comunica que se a realizado correctamente el registro pero al ver en mi base de datos no existe los datos ingresados y la verdad no me arroja ningun error.
nota "la conexion a la base de datos es correcta y tambien se realiza desde una class llamada enlace la cual se instancio en la class conn"
agradezco su ayuda.
pagina de registro.php
<?php
if(isset($_POST['register'])) {
include'registrar.php';
$registrar = new Registrar();
if($registrar->confirmar()) {
echo "Felicitaciones registro exitoso";
header("Refresh: 5; URL=index.php"); } else {
$registrar->_errors();
}
}
?>
<form action="<?php echo $_SERVER["PHP_SELF"]; ?>" method="post" >
<label for="apodo">Nick:</label>
<input type="text" name="apodo" id="apodo" maxlength="20" value="">
<label for="password">Contraseña:</label>
<input type="password" name="password" id="password" maxlength="20" value="">
<input type="hidden" name="token" value="
<?php $token = $_SESSION['token'] = md5(uniqid(mt_rand(),true)); echo $token;?>">
<input type="submit" name="register" id="submit" value="registrar">
<input type="reset" value="Borrar">
</form>
/************************************************** *********************************
************************************************** *********************************
************************************************** *********************************/
archivo conexion.php
<?php
require'enlace.php';
class conn {
private $servidor;
private $usuario;
private $password;
private $database;
private static $_instance;
private function __construct() {
$this->enlaces();
$this->conectar();
}
public static function getInstance(){
if (!(self::$_instance instanceof self)){
self::$_instance = new self();
}
return self::$_instance;
}
private function enlaces(){
$enlace = enlace::getInstance();
$this->servidor = $enlace->hostin();
$this->usuario = $enlace->rot();
$this->password = $enlace->pasw();
$this->database = $enlace->test();
}
private function __clone() {
}
private function conectar() {
$mysqli = new mysqli($this->servidor, $this->usuario, $this->password, $this->database);
}
echo 'Éxito... ' . $mysqli->host_info . "\n";
if (!$mysqli->set_charset("utf8")) {
printf("Error cargando el conjunto de caracteres utf8: %s\n", $mysqli->error); } else {
printf("Conjunto de caracteres actual: %s\n", $mysqli->character_set_name()); }
$mysqli->close();
}
}
//conn::getInstance();
?>
/************************************************** *********************************
************************************************** *********************************
************************************************** *********************************/
registrar.php
<?php
require'conexion.php';
$mysqli = conn::getInstance();
class Registrar {
private $apodo;
private $contrase;
private $passmd5;
private $errors;
private $token;
public function __construct() {
$this->data();
}
private function data(){
$this->apodo = $_POST['apodo'];
$this->contrase = $_POST['contrase'];
$this->passmd5 = md5($this->contrase); $this->token = $_POST['token'];
}
public function confirmar() {
if($this->_token() && $this->_data())
$this->users();
return count($this->errors)?
0 : 1; }
public function users() {
$mysqli = conn::getInstance();
$mysqli->query("INSERT INTO usuario(apodo,contrase) VALUES (''{$this->apodo}','{$this->passmd5}')");
if($mysqli->affected_rows< 1)
$this->errors[] = 'Could Not Process Form';
}
}
public function existe() {
$mysqli = conn::getInstance();
$result = $mysqli->query("SELECT id FROM usuario WHERE apodo = '{$this->apodo}'");
$row_cnt = $result->num_rows;
return $row_cnt? 1 : 0;
$result->close();
}
}
public function _errors() {
echo "<h3>Errors</h3>";
foreach($this->errors as $key=>$value)
echo $value."<br>";
}
public function _data() {
if($this->existe()) {
$this->errors[] = 'El seudonimo digitado ya se encuentra en uso';
}
if(empty($this->apodo)) { $this->errors[] = 'Digite su seudonimo para ingresar a esta web';
}
if(empty($this->contrase)) { $this->errors[] = 'Sin la contraseña no podra ingresar en el futuro';
}
return count($this->errors)?
0 : 1; }
public function _token() {
if(!isset($_SESSION['token']) || $this->token != $_SESSION['token']) $this->errors[] = 'Invalid Submission';
return count($this->errors)?
0 : 1; }
}
?>