PHP - Problema al Insertar registros en BBDD MYSQL desde form con PDO, método POST y marcadores

 
Vista:
sin imagen de perfil

Problema al Insertar registros en BBDD MYSQL desde form con PDO, método POST y marcadores

Publicado por SERGIO (7 intervenciones) el 08/11/2017 22:45:20
No se que problema tiene este código, no funciona:


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
<?php
 
$buscar_nif= $_POST["c_nif"];
$buscar_nom= $_POST["c_nom"];
$buscar_ape= $_POST["c_ape"];
$buscar_eda= $_POST["c_eda"];
 
try{
 
    $base= new PDO('mysql:host=localhost; dbname=pruebas', 'Sergio','');
    $base->setAttribute(PDO::ATTR_ERRMODE, ERRMODE_EXCEPTION);
    $base->exec("SET CHARACTER SET utf8");
 
    $consulta="INSERT INTO datospersonales (APELLIDO, EDAD, NIF,           NOMBRE,) VALUES (:c_ape, :c_eda, :c_nif, :c_nom)";
 
    $resultado=$base->prepare($consulta);
 
         $resultado->execute(array(":c_ape"=>$buscar_ape,":c_eda"=>$buscar_eda, ":c_nif"=>$buscar_nif, ":c_nom"=>$buscar_nom));
 
    echo "Registro insertado";
 
    }
    $resultado->closeCursor();
 
}catch(Exception $e){
 
    die('Error:' . $e->GetMessage());
 
}
 
finally{
 
    $base=null;
 
}
 
?>

En Firefox devuelve la web en blanco y en Chromium error 500. Estoy retomando la programación después de 20 añazos y necesito comprender conceptos y está claro que algo se me ha quedado atrás en el curso qu estoy siguiendo. Tengo otra página que usa dos marcadores para una consulta en una tabla y funciona OK:

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
<?php
 
$bus_nom=$_POST['c_nom'];
$bus_ape=$_POST['c_ape'];
 
 
try{
 
	$base= new PDO('mysql:host=localhost; dbname=pruebas', 'Sergio','');
	$base->setAttribute(PDO::ATTR_ERRMODE, ERRMODE_EXCEPTION);
 
	$base->exec("SET CHARACTER SET utf8");
 
	$sql="SELECT NIF, NOMBRE, APELLIDO, EDAD FROM datospersonales WHERE NOMBRE = :nom AND APELLIDO = :ape";
 
	$resultado=$base->prepare($sql);
 
	$resultado->execute(array(":nom"=>$bus_nom, ":ape"=>$bus_ape));
 
	while($registro=$resultado->fetch(PDO::FETCH_ASSOC)){
 
	echo "NIF: " . $registro['NIF'] . "Nombre: " . $registro['NOMBRE'] . "Apellido: "  . $registro['APELLIDO'] . "Edad:" . $registro['EDAD'] . "<br>";
 
 
	}
	$resultado->closeCursor();
 
}catch(Exception $e){
 
	die('Error:' . $e->GetMessage());
 
}
 
finally{
 
	$base=null;
 
}
 
?>

No lo veo, y me frustra... Hasta que no entienda que estoy haciendo mal, no debo seguir. Esto es POO, hay que tener los conceptos básicos claros... Ayuda, por favor... Gracias!!
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
sin imagen de perfil
Val: 604
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Problema al Insertar registros en BBDD MYSQL desde form con PDO, método POST y marcadores

Publicado por Miguel (218 intervenciones) el 09/11/2017 02:25:06
Pues el código se ve bien. Busca en el log el error o trata de mostrarlo desde PHP usando:

1
2
3
// al inicio de tu script
error_reporting(E_ALL);
ini_set('display_errors', 1);
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Problema al Insertar registros en BBDD MYSQL desde form con PDO, método POST y marcadores

Publicado por Sergio (7 intervenciones) el 09/11/2017 07:30:05
Muchas gracias, sucede lo mismo, no hay error nuevo. De hecho no imprime, nin antes lo hacía, nada en pantalla. Me llegué a romper tanto la cabeza que dejé todo el script entre comentaeios e hice que se imprimiesen co echios las variables que contienen los valores que se reciben de los inputs or si el error venía por ahí pero las imprimía a la perfección, la consulta está.obviamente, bien generada... pero en ccuanto entra en el try no se qué es lo que hace pero no hace llo que debe. Estoy usando LAMP desde UBUNTU 17.10 con PHP 7... Tengo un megaproyecto en la cabeza y me estoy desanimando al ver que me atasco en cosas tan básicas...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Problema al Insertar registros en BBDD MYSQL desde form con PDO, método POST y marcadores

Publicado por Sergio (7 intervenciones) el 09/11/2017 08:01:04
He probado con una consulta de eliminación cop delete para simp,lificar y utilizar un solo marcador y ocurre exactamente lo mismo... Me acabaré volviendo loco

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
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Eliminar en tabla mediante PDO</title>
<style>
 
h1{
	text-align:center;
	color:#00F;
	border-bottom:dotted #0000FF;
	width:50%;
	margin:auto;
 
}
 
table{
	border:1px solid #F00;
	padding:20px 50px;
	margin-top:50px;
}
 
body{
	background-color:#FFC;
}
 
 
</style>
</head>
 
<body>
<h1>Registro de Bajas</h1>
<form name="form1" action="eliminarpdo.php" method="post">
  <table border="0" align="center">
    <tr>
      <td>NIF</td>
      <td><label for="c_nif"></label>
      <input type="text" name="c_nif" id="c_nif"></td>
    </tr>
    <tr>
       <tr>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
    </tr>
    <tr>
      <td align="center"><input type="submit" name="enviar" id="enviar" value="Enviar"></td>
      <td align="center"><input type="reset" name="Borrar" id="Borrar" value="Borrar"></td>
    </tr>
  </table>
</form>
</body>
</html>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar