Comunidad de diseño web y desarrollo en internet online

manipular valores

Citar            
MensajeEscrito el 05 Jul 2020 05:53 pm
Hola foro !!!
Como siempre aquí molestándolos espero me puedan ayudar, tengo un input que llama a una función esta función llama a un script y este script devuelve los valores deseados como muestro abajo todo funciona bien. El problema es que los valores registro[3] me devuelve F o M y registro[4] me devuelve EME,LAB y RAX y lo que deseo es como manipular esas variables para que F sea FEMENINO y M sea MASCULINO lo mismo para EME sea EMERGENCIA y LAB sea LABORATORIO espero me haya podido explicar. GRACIAS

<input type="text" name="cepa" onchange="CedulaPaciente(this.value)" />
function CedulaPaciente(id){
$.post("alta_historico3.php",{ClaveId:id},function(retorno){
registro = retorno.split("/");
$('#nomp').val(registro[0]);
$('#apep').val(registro[1]);
$('#fecp').val(registro[2]);
$('#sexp').val(registro[3]);
$('#salp').val(registro[4]);
$('#telp').val(registro[5]);
});
}
*-------------------------------------------------------------------------------------------------------------------
Script alta_historico3.php
require ("conecta.php");
$id = $_POST['ClaveId'];
$peticion = "SELECT p.nombre,p.apellido,p.fec_nac,p.sexo,e.sala,e.telefono from paciente p, expediente e
where p.ced = '$id' and e.ced_paciente = '$id' ";
$respuesta = mysqli_query($conectado,$peticion);
$registros = mysqli_fetch_object($respuesta);
$datos = $registros->nombre."/".$registros->apellido."/".$registros->fec_nac."/".$registros->sexo."/".$registros->sala."/".$registros->telefono ;
echo $datos;
*-------------------------------------------------------------------------------------------------------------------
<input type="text" name="sex" id="sexp" />
<input type="text" name="sal" id="salp" />

Por Noe Velazquez

39 de clabLevel



 

chrome
Citar            
MensajeEscrito el 06 Jul 2020 05:04 pm
Pues la forma mas simple es expandirlos

Código PHP :

$registros = mysqli_fetch_object($respuesta);
$sexo = ($registros->sexo=="F")?"Femenino":"Masculilno";
$sala = ($registros->sala=="EME")?"Emergencias":"Laboratorio";
if($registros->sala=="RAX") $sala = "Rayos X";
$datos = $registros->nombre."/".$registros->apellido."/".$registros->fec_nac."/".$sexo."/".$sala."/".$registros->telefono ;


Jorge

Por solisarg

BOFH

13636 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

chrome
Citar            
MensajeEscrito el 07 Jul 2020 02:33 pm
Hola Jorge !!!
gracias por responder lo voy a poner en practica.

Por Noe Velazquez

39 de clabLevel



 

chrome
Citar            
MensajeEscrito el 17 Jul 2020 08:50 pm
hola jorge!!!
implemente lo que comentaste pero no funciona, tal vez no me supe explicar bien el asunto te muestro los dos script y lo que pretendo es que cuando me regrese el valor de una fecha la quiero es sacar el año de dicha fecha para calcular la edad del paciente. GRACIAS

Hola foro !!!
tengo 2 script y funcionan bien lo unico que no he podido es la manipulacion del valor de la variable, el dato que trae es una fecha ejemplo (1954-09-20) lo que pretendo es sacar el año de la fecha para poder calcular su edad del paciente les muestro los 2 script.

alta_consulta1.php
<?php
session_start();
date_default_timezone_set('America/Mexico_City');
$fecha = date("Y-m-d") ;

if ($_SESSION["usuario"]){
//echo $_SESSION["usuario"];
require ("conecta.php");
$busca = "SELECT MAX(con_id) as maximo from consulta";
$lista = mysqli_query($conectado,$busca);
$dato = mysqli_fetch_assoc($lista);
$max_fol= $dato[maximo] + 1;
?>
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<title>Consulta</title>
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript">
function CedulaPaciente(id){
$.post("alta_consulta2.php",{ClaveId:id},function(retorno){
registro = retorno.split("/");
$('#nomp').val(registro[0]);
$('#fecp').val(registro[1]);
});
}
</script>
</head>
<body>
<div class="caja">
<form name="f" action="alta_consulta3.php" method="post">
<br />
<table width="746" align="center">
<tr>
<td width="130">Num. Expediente</td>
<td width="370"><input type="text" name="nuex" class="alto1" value="<?php echo $max_fol; ?>"></td>
<td width="55" align="right">Fecha&nbsp;</td>
<td width="20"><input type="date" name="fein" value="<?php echo $fecha; ?>" class="alto1"></td>
</tr>
<tr>
<td>Cedula Prof.</td>
<td><input type="text" name="cepo" class="alto1" autofocus="on"></td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td>Nombre Medico</td>
<td><input type="text" name="nome" id="nomm" class="alto1 largo2"></td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td>Cedula Paciente</td>
<td><input type="text" name="cepa" onchange="CedulaPaciente(this.value)" class="alto1"></td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td>Nombre Paciente</td>
<td><input type="text" name="nopa" id="nomp" class="alto1 largo2"></td>
<td align="right">Edad&nbsp;</td>
<?php
if (isset($cepa)){
//$ant = $('#fecp').val($registro[1]);
//$ant = ($registro[1]);
$ant = $_SESSION["pasofecha"];
$act = $fecha;
$old = explode("-", $ant);
$new = explode("-", $act);
$anios = $new[0] - $old[0];
}
?>
<td><input type="text" name="edpa" value="<?php echo $anios; ?>" class="alto1 largo1">&nbsp;&nbsp;&nbsp;Años</td>
</tr>
</table>
<table width="746" align="center">
<tr>
<td colspan="2" align="center">MEDICAMENTO</td>
<td colspan="2" align="center">INDICACIONES</td>
</tr>
<tr>
<td colspan="2"><textarea name="med" rows="8" cols="48"><?php echo $new[0] ;?></textarea></td>
<td colspan="2"><textarea name="ind" rows="8" cols="48"></textarea></td>
</tr>
</table>
<br /><br />
</form>
<div id="botones">
<input type="button" value="Registra Consulta" class="btn btn-azu" onclick="registra()" tabindex="10"/>
<input type="button" value="Limpia" class="btn btn-azu" onclick="window.location='alta_consulta1.php'" tabindex="11"/>
<input type="button" value="Menu Principal" class="btn btn-azu" onclick="window.location='menu_hospital.php'" tabindex="12"/>
</div>
</div>
</body>
</html>
<?php
}else{
echo
"<script type='text/javascript'>
alert('Usted no esta logueado');
window.location='index1.php';
</script>";
}
?>

alta_consulta2.php
<?php
session_start();
require ("conecta.php");
$id = $_POST['ClaveId'];


$peticion = "SELECT concat(nombre,' ',apellido) as nombre,fec_nac from paciente where ced = '$id' ";
$respuesta = mysqli_query($conectado,$peticion);
$registros = mysqli_fetch_object($respuesta);
$dato = mysqli_fetch_assoc($respuesta);

$_SESSION["pasofecha"]=$dato["fec_nac"];
$datos = $registros->nombre."/".$registros->fec_nac;
echo $datos;
?>
GRACIAS.

Por Noe Velazquez

39 de clabLevel



 

chrome
Citar            
MensajeEscrito el 18 Jul 2020 05:50 am

Por solisarg

BOFH

13636 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

chrome
Citar            
MensajeEscrito el 18 Jul 2020 06:29 pm
Hola Jorge!!!
gracias por responder, la verdad no he podido explicarme bien el escript me regresa el valor de la fecha de nacimiento (1981-01-15) pero lo manda el la variabnle $('#fecp').val(registro[1]); que esta dentro de la funcion cedulapaciente.
esa variable es la que no he podido desglosar

if (isset($cepa)){
//$ant = $('#fecp').val($registro[1]); <---------------AQUI
//$ant = ($registro[1]);
$fecha = date("Y-m-d") ;
$act = $fecha;
$old = explode("-", $ant);
$new = explode("-", $act);
$anios = $new[0] - $old[0];

Por Noe Velazquez

39 de clabLevel



 

chrome
Citar            
MensajeEscrito el 18 Jul 2020 06:46 pm
buenas tarde

creo que no he podido darme a enterder , mi problema no es como calcular la edad si no la manipulación del valor de la variable que regresa la funcion consultapaciente q a su vez invoca el script alta_consulta2.php <--- este hace la peticion al servidor para traer el nombre y la fecha de nacimiento, y se lo regresa a la funcion consultapaciente y lo mete en la variable ( $('#fecp').val(registro[1]); ) y lo muestro en
<input type="text" name="edpa" id="fecp" class="alto1 largo1"> pero muestra asi (1981-12-01), la pregunta es como puedo desglosar esta variable $('#fecp').val(registro[1]) para poder sacar solo el año.
GRACIAS

Por Noe Velazquez

39 de clabLevel



 

chrome
Citar            
MensajeEscrito el 19 Jul 2020 10:31 am
Si la variable tiene este valor

'1981-01-15'

Cuando lo capturas con JQuery, usa solo los primeros 4 caracteres

$('#fecp').val(registro[1].substr(0, 4)); //aca asigna solo el año

Jorge

Tip: cuanto mas simple y focalizada es la pregunta, mas cerca estas de resolverla por ti mismo. Las preguntas con mas chances de ser respondidas son aquellas en donde has logrado plantear sinteticamente el problema en unas pocas lineas. Tu primer post tiene 200 lineas, luego repreguntaste y luego aclaraste la repregunta.

Por solisarg

BOFH

13636 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

chrome
Citar            
MensajeEscrito el 19 Jul 2020 01:25 pm
Hola Jorge buenos días!!!
para la proxima vez seguiere tu consejo la pregunta la simplificare.

GRACIAS

Por Noe Velazquez

39 de clabLevel



 

chrome
Citar            
MensajeEscrito el 19 Jul 2020 09:38 pm
me da pena molestarte tanto, pero soy novato en esta tecnología.
efectivamente con $('#fecp').val(registro[1].substr(0, 4)); separa el año, yo te avía comentado que sabia calcular la fecha pero no he podido yo tengo esto y esta dentro del formulario

<td><input type="text" name="cepa" onchange="CedulaPaciente(this.value)" autofocus="on" tabindex="4"></td>

if (isset($cepa)){
$fena = val($registro[1]);
$feac = date("Y-m-d");
$old = explode("-", $fena);
$new = explode("-", $feac);
$anios = $new[0] - $old[0];
}
<input type="text" name="edpa" value="<?php echo $anios?>" class="alto1 largo1" tabindex="6">
pero no ejecuta nada siento que el calculo debería hacerse en la función o en el script alta_consulta2.php te lo muestro abajo
require ("conecta.php");
$id = $_POST['ClaveId'];

$peticion = "SELECT concat(nombre,' ',apellido) as nombre,fec_nac from paciente where ced = '$id' ";
$respuesta = mysqli_query($conectado,$peticion);
$registros = mysqli_fetch_object($respuesta);

$datos = $registros->nombre."/".$registros->fec_nac;
echo $datos;

perdón mi atrevimiento pero me podriás ayudar a resolverlo ?
GRACIAS

Por Noe Velazquez

39 de clabLevel



 

chrome
Citar            
MensajeEscrito el 20 Jul 2020 03:15 pm
Esta todo mezclado el PHP, Javascript y HTML y es dificil el flujo.
Lo primero es saber si imprime los anos calculados. Veo esta linea

<td><input type="text" name="edpa" value="<?php echo $anios; ?>" class="alto1 largo1">&nbsp;&nbsp;&nbsp;Años</td>

Entonces si ves el source del HTML, deberias poder ver si el value es correcto ... imprime algo?

Jorge

Por solisarg

BOFH

13636 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

chrome
Citar            
MensajeEscrito el 20 Jul 2020 06:50 pm
buenas tardes Jorge.
no ejecuta esto que esta dentro del html
if (isset($cepa)){
$fena = val($registro[1]);
$feac = date("Y-m-d");
$old = explode("-", $fena);
$new = explode("-", $feac);
$anios = $new[0] - $old[0]; no imprime nada

efectivamente es dificil el flujo en html,php y javascript he esta investigando y esto se hace en el bach-end yo ejecuto ese back-end con la funcion (CedulaPaciente) que trabaja correctamente y me trae la informacion que deseo todo se complico con la fecha, creo que ya lo resolvi la fecha de nacimiento le pedi que solo regresara el año solamente y lo hice con esto
$peticion = "SELECT concat(nombre,' ',apellido) as nombre, year(fec_nac) as fec_nac, year(fec_act) as fec_act
from paciente p, fecha_actual f where ced = '$id' ";
cree un tabla que se llama fecha_actual y su campo se llama fec_act dentro de la funcion modifique esto
$('#fecp').val(registro[1]);
$('#fech').val(registro[2] - registro[1]);

<input type="text" name="edpa" id="fech" class="alto1 largo1" tabindex="6">
y ya muestra la edad del paciente, ahora solo necesito es investigar si dentro de la funcion se puede manipular la fecha actual para borrar la tabla fecha_actual me podrias dar tu opinion si esta corecto?
o si se puede mejorarla?
GRACIAS

Por Noe Velazquez

39 de clabLevel



 

chrome
Citar            
MensajeEscrito el 20 Jul 2020 08:17 pm
No lo ejecuta porque la variable $cepa (que no se que es ni se de donde viene) no esta definida

if(isset($cepa)) //?? que es $cepa

Mira de definirla o cambia la condicion

Jorge

Por solisarg

BOFH

13636 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

chrome
Citar            
MensajeEscrito el 21 Jul 2020 12:00 pm
buenos días jorge.

$cepa viene del input
<td>Cedula Paciente</td>
<td><input type="text" name="cepa" onchange="CedulaPaciente(this.value)" class="alto1"></td> este invoca a la función CedulaPaciente(this.value) ese pedazo de código ya lo quite

if (isset($cepa)){
$fena = val($registro[1]);
$feac = date("Y-m-d");
$old = explode("-", $fena);
$new = explode("-", $feac);
$anios = $new[0] - $old[0];
}
hoy investigo lo de la fecha en javascript y mas tarde te comento

Por Noe Velazquez

39 de clabLevel



 

chrome
Citar            
MensajeEscrito el 31 Jul 2020 04:30 am
¿por que usas abreviaturas? :o
y que problema te falta resolver?

Por elporfirio

Claber

652 de clabLevel

1 tutorial

Genero:Masculino  

FullStack Web Developer

chrome

   Página 1 de 1

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.