saludos a la comunidad tengo un problema intento hacer esto:
en mi tabla examenes_laboratorio_pacientes
guardo el id que es auto incremen, la fk_cedula que es la cedula del paciente que se le genera ese recipe medico, fk_examen_laboratorio que es el id de los medicamentos y por ultimo la fecha de creación del recipe medico pero me da error
id ---- fk_cedula ---- fk_examen_laboratorio ---- fecha
1 87654321 25 02/03/2017
2 87654321 10 02/03/2017
3 14622737 8 02/03/2017
4 14622737 5 02/03/2017
este es el ejemplo de como debería ser, ahora para guardar estoy implementando esto:
<?php
if(isset($_POST['guardar'])){
$sql = "SELECT id FROM examenes_laboratorio_pacientes WHERE id = :id LIMIT 1"; //Creamos la select
$check = $DB_con->prepare($sql); //Preparamos la SELECT, de ésta manera evitamos SQL Injection
$check->bindParam(':id', $_POST['id']);//Substituimos las variables de la SELECT
$check->execute();//Ejecutamos la consulta
$contador = $check -> rowCount();//Esta función devuelve el número de resultados que ha devuelto la SELECT
if ($contador > 0) {
$check->closeCursor();
$mensaje = "<div class='col s12 card-panel blue lighten-2 center'>
<h5 class='black-text text-darken-2 center CONDENSED LIGHT5'>
¡ Ups Aviso: El Registro ya se Encuentra Insertado !
</h5>
</div>";
header("refresh:5;examenes_laboratorio.php");
$sql = false;
}else{
for ($i = 0; $i < count($fk_examen_laboratorio); $i++){
foreach ($fk_cedula as $key => $fk_cedula) {
$sql=$DB_con->prepare("INSERT INTO examenes_laboratorio_pacientes (id,fk_cedula,fk_examen_laboratorio,fecha)
VALUES (:id, :fk_cedula[$key], :$last_id, :fecha[$key])");
$sql->bindParam(':id',$_POST['id']);
$sql->bindParam(':fk_cedula',$_POST['fk_cedula']);
$sql->bindParam(':fk_examen_laboratorio',$_POST['fk_examen_laboratorio']);
$sql->bindParam(':fecha',$_POST['fecha']);
$sql->execute();
}
}
}
if($sql)
{
$mensaje ="<div class='col s12 card-panel teal lighten-2 center'>
<h5 class='black-text text-darken-2 center CONDENSED LIGHT5'>
¡ Bien Hecho: Registro Insertado Correctamente !
</h5>
</div>";
header("refresh:5;examenes_laboratorio.php");
}
}
?>
y porque cuando hago el proceso para guardar se cae la consutta, anexo imágenes para se mas claro,
el formulario, nota primero consulto luego después de haber consultado hago el registro.
<!-- formulario de registro-->
<div class="row">
<?php
$id= $_GET['id'];
$consulta = $DB_con->prepare("SELECT * FROM historia_clinica WHERE id=:id");
$consulta->execute(array(':id'=>$id));
$editar_linea = $consulta->fetch(PDO::FETCH_ASSOC);{
//extract($editar_linea);
extract((array)$editar_linea);
echo "<form class='col s12' action='examenes_laboratorio.php' name='frmContacto' method='POST'>
$mensaje
<h4 class='left-align black-text thin'>
<input type='hidden' name='id' value='{$editar_linea['id']}'>
<input type='hidden' name='fecha' value='<?php echo date('d/m/Y');?>
<input type='hidden' name='fk_cedula' value='{$editar_linea['cedula']}'>
<span>Paciente:</span> $nombres $apellidos
<span>Edad:</span> $edad <span>E-Mail:</span> $email
<br>
<span>Fecha Historia Clinica:</span> <?php echo $fecha_creacion_historia_clinica; ?>
<br>
<span>N° Historia Clinica:</span> $id
</h4>
<hr>
<h4 class='center-align black-text thin'>Examen Laboratorio</h4>";
}
$id= $_GET['id'];
$consulta = $DB_con->prepare("SELECT * FROM historia_clinica WHERE id=:id");
$consulta->execute(array(':id'=>$id));
$editar_linea = $consulta->fetch(PDO::FETCH_ASSOC);{
//extract($editar_linea);
extract((array)$editar_linea);
echo "
<div class='row' style='max-width: 600px;'>
<div class='card-panel white lighten-1 col s12'>
<img src='../img cintillo/cintillo.png' class='responsive-img rectangule'>
<hr>
<br>
<div class='col s12'>
<span>Pac:</span> $nombres $apellidos <span>Edad:</span> $edad
<br>";
}
?>
<span>Fecha:</span> <?php echo date('d/m/Y');?>
<br>
<h5 class='center-align thin'>Examen Laboratorio</h5>
</br>
<?php
$consulta = $DB_con->query("SELECT * FROM examen_laboratorio ORDER BY id");
while ($linea = $consulta->fetch(PDO::FETCH_ASSOC)) {
echo "<p>";
echo "<input type='checkbox' name='fk_examen_laboratorio[]' id='chk1{$linea['id']}' value='{$linea['id']}' />";
echo "<label class='black-text' for='chk1{$linea['id']}'>* {$linea['examen']}: {$linea['descripcion']}</label>";
echo "</p>";
}
?>
OTROS:_________________________________________________________
_______________________________________________________________
<div class="center-align">
<br><br>
Sector Las Avenidas. Av. La Paz, Quinta Doña Gaetana. Centro Médico-quirúrgico ALFA.
Maturín, Estado Monagas. Lunes- Viernes
<br>
Email: [email protected]
</div>
</div>
</div>
</div>
<br>
<div class='center-align'>
<button class='btn waves-effect blue-grey darken-4 btn-medium' data-position='bottom' type='submit' name='guardar'>Agregar Examen Laboratorio</button>
<button class='btn waves-effect blue-grey darken-4 btn-medium' data-position='bottom'
type='reset' name='borrar'>Borrar</button>
<a href='javascript:history.back(1)' class='btn waves-effect blue-grey darken-4 btn-medium'>Volver</a>
</div>
</form>
<!-- FIN formulario-->
gracias de ante mano