problema con select multiple de HTML a una base de datos
Publicado por Alonso Forero (2 intervenciones) el 18/04/2019 05:35:43
tengo un formulario en Html, el cual pemite al usuario hacer un select multiple y guardar en una base de datos, posteriormente el usuario puede ver la informacion que guardó anteriormente cuando deseé, claro esta haciendo clic en los botones correspondientes para ello, el problema es que realmente el usuario hace el select multiple pero lo que se guarda en la base de datos es la palabra array, y logico cuando quiero recuperar la información que el usuario seleccionó lo que me regresa es la palabra array, en conclusión no estoy logrando el objetivo que es recuperar la información.
este es la parte del formulario que corresponde al select multiple.
y eso es todo lo que tengo hasta ahora, he intentado de muchas maneras pero siempre el resultado es igual (array) , les agradeceria si me dan alguna luz al respecto.
mil gracias de antemano,
este es la parte del formulario que corresponde al select multiple.
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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
<td>
<select multiple="multiple" name="aP[]" id="aP" title="Seleccione los antecedentes patológicos, para seleccionar varios mantenga oprimida la tecla control">
<option value="">Seleccione</option>
<option value="hipertension_Arterial," >HTA</option>
<option value="accidente_cerebro_vascular,">ACV</option>
<option value="secuelas_de_ACV,">Secuelas de ACV</option>
<option value="DM_Tipo_I,">DM Tipo I</option>
<option value="DM_Tipo_II,">DM Tipo II</option>
<option value="cancer,"> Cancer</option>
<option value="enfermedad_acido_peptia,">Enfermedad Acido Peptica</option>
<option value="epoc,">EPOC</option>
<option value="enfermeded_pulmonar_restrictiva,">Enfermedad Pulmonar Restrictiva</option>
<option value="enfermedad_genetica,">Enfermedad o Condición Genética</option>
<option value="enfermedad_congenita,">Enfermedad o condición Congénita</option>
<option value="Infecciones,">Infecciones</option>
<option value="oAP">Otras</option>
</select>
</td>
este es el archivo controlador/insertarAP.php
<?php
require_once '../modelo/conexion.php';
require_once '../modelo/consultaInsertarAP.php';
$mensaje = null;
// capturamos las variables del formulario.
$aP= $_POST['aP'];
// creamos la variable consulta que va a corresponder al objeto consulta (lo estamos creando)
$consultas = new consultas();
// llamamos al metodo insertarAP, y como nos devuelve una cadena de caracteres lo guardamos en $mensaje
$mensaje = $consultas->insertarAP( $aP);
}
y este es el modelo/consultaInsertarAP.php
<?php
class Consultas{ // metodo para ingresar datos a la BD mediante PDO
public function insertarAP( $arg_aP){
$modelo = new Conexion(); // creamos esta variable llamada modelo
$conexion = $modelo->get_conexion(); // creamos la variable conexion y le pasamos la conexion
// ahora creamos la consulta
$sql = "insert into aPP ( aP) values(:aP)";
$statement = $conexion->prepare($sql); // preparamos la consulta con el metodo prepare, y el parametro que es la consulta misma sql
$statement->bindParam(':aP', $arg_aP);
// ahora vamos a ejecutar la consulta
if($statement->execute(array( ":aP"=>$arg_aP))){
return 'Antecedentes Personales Guardados satisfactoriamente.<br> <br> Por Favor haga click en la flecha <-- del navegador para continuar';
}else{
return " error al crear registro en la base de datos.<br> <br> Por Favor haga click en la flecha <-- del navegador para devolver ";
}
}
// hasta aqui ya introduje los datos a la tabla aPP de la BD.
para recuperar la informacion de la base de datos uso el siguiente codigo: numeroHC viene de otro formulario, es información que el usuario tiene que obligatoriamente introducir si quiere llegar aqui.
<?php
require'../class/database.php'; // llamamos al archivo que nos conecta a la base de datos
$objData = new Database(); // ya estamos conectados a la BD
$sth = $objData->prepare('SELECT * FROM aPP WHERE numeroHC = :numeroHC' );
$numeroHC = $_GET['numeroHC'];
$sth->bindParam(':numeroHC',$numeroHC);
$sth->execute();
$result = $sth->fetchAll();
// LE INDICO QUE ME MUESTRE EL RESULTADO del arreglo
//print_r($result);
?>
<table width="100%" border="4">
<?php
if($result){
for ($i=0; $i< count($result); $i++)
{
echo $result[$i]['aP']
}
};
?>
mil gracias de antemano,
Valora esta pregunta


0