Ayuda con insercion BD mvc
Publicado por ernesto (11 intervenciones) el 02/11/2018 05:20:25
Soy nuevo en esto sobre todo programando en capas y no lo entiendo bien del todo pero estaba probando hacer registros atraves de un formulario a la base de datos ....el problema es que cualquier registro que ingrese aparece doble en la base de datos
carpeta Bean clase Persona
CARPETA controlador clase PersonaControlador
carpeta Dao clase PersonaDao
EL FORMULARIO
CLASE REGISTRO CODE Q LLAMA EL FORMULARIIO
CREO QUE EL PROBLEMA ESTA EN EL DAO en la funcion get usuario ,,,,,nose quien me ayuda
carpeta Bean clase Persona
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?php
class Persona
{
public $Nombre;
public $Apellidos;
function getNombre() {
return $this->Nombre;
}
function getApellidos() {
return $this->Apellidos;
}
function setNombre($Nombre) {
$this->Nombre = $Nombre;
}
function setApellidos($Apellidos) {
$this->Apellidos = $Apellidos;
}
}
CARPETA controlador clase PersonaControlador
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?php
include '../DAO/PersonaDao.php';
class PersonaControlador
{
public function registrarse($Nombre, $Apellidos)
{
$obj_persona = new Persona();
$obj_persona->setNombre($Nombre);
$obj_persona->setApellidos($Apellidos);
return PersonaDao::registrarse($obj_persona);
}
public function getPersona($Nombre, $Apellidos)
{
$obj_persona = new Persona();
$obj_persona->setNombre($Nombre);
$obj_persona->setApellidos($Apellidos);
return PersonaDao::getPersona($obj_persona);
}
}
carpeta Dao clase PersonaDao
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
<?php
include '../UTIL/Conexion.php';
include '../BEAN/Persona.php';
class PersonaDao extends Conexion
{
protected static $cnx;
private static function getConexion()
{
self::$cnx = Conexion::conectar();
}
private static function desconectar()
{
self::$cnx = null;
}
public static function registrarse($persona)
{
$query = "INSERT INTO persona (Nombre,Apellidos)VALUES(:Nombre,:Apellidos)";
self::getConexion();
$resultado = self::$cnx->prepare($query);
$resultado->bindValue(":Nombre", $persona->getNombre());
$resultado->bindValue(":Apellidos", $persona->getApellidos());
$resultado->execute();
if ($resultado->execute()) {
return true;
}
return false;
}
public static function getPersona($persona)
{
$query = "SELECT * FROM persona";
self::getConexion();
$resultado = self::$cnx->prepare($query);
$resultado->bindValue(":Nombre", $persona->getNombre());
$resultado->bindValue(":Apellidos", $persona->getApellidos());
$resultado->execute();
$filas = $resultado->fetch();
$persona = new Persona();
$persona->setNombre($filas["Nombre"]);
$persona->setApellidos($filas["Apellidos"]);
return $persona;
}
}
EL FORMULARIO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<?php include 'partials/head.php';?>
<?php include 'partials/menu.php';?>
<div class="container">
<div class="starter-template">
<br>
<br>
<br>
<div class="row">
<div class="col-md-4 col-md-offset-4">
<div class="panel panel-default">
<div class="panel-body">
<form action="registroCode2.php" method="POST" role="form">
<legend>Rigistrar nueva solicitud</legend>
<div class="form-group">
<label for="nombre">Nombre</label>
<input type="text" name="txtnom" class="form-control" id="nombre" autofocus required placeholder="Ingresa tu nombre">
</div>
<div class="form-group">
<label for="apellido">Apellidos</label>
<input type="text" name="txtape" class="form-control" id="email" required placeholder="Ingresa tu dirección de e-mail">
</div>
<button type="submit" class="btn btn-success">Registrar</button>
</form>
</div>
</div>
</div>
</div>
</div>
</div><!-- /.container -->
<?php include 'partials/footer.php';?>
CLASE REGISTRO CODE Q LLAMA EL FORMULARIIO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?php
include '../controlador/PersonaControlador.php';
include '../helps/helps.php';
session_start();
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (isset($_POST["txtnom"]) && isset($_POST["txtape"])) {
$txtnom = validar_campo($_POST["txtnom"]);
$txtape = validar_campo($_POST["txtape"]);
if (PersonaControlador::registrarse($txtnom, $txtape)) {
$persona = PersonaControlador::getPersona($txtnom, $txtape);
$_SESSION["persona"] = array(
"Nombre" => $persona->getNombre(),
"Apellidos" => $persona->getApellidos(),
);
header("location:admin.php");
}
}
} else {
header("location:solicitud.php?error=1");
}
CREO QUE EL PROBLEMA ESTA EN EL DAO en la funcion get usuario ,,,,,nose quien me ayuda
Valora esta pregunta
0