PHP - Ayuda con insercion BD mvc

 
Vista:
sin imagen de perfil
Val: 18
Ha aumentado su posición en 6 puestos en PHP (en relación al último mes)
Gráfica de PHP

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

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
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder