Foros del Web » Programando para Internet » PHP »

Guardar NUevo registro o actualizar uno ya existente

Estas en el tema de Guardar NUevo registro o actualizar uno ya existente en el foro de PHP en Foros del Web. Buen día, Estoy haciendo un guardado de registro y ademas leyendo otros de otra BD en total uso 2 BD en la primera obtengo los ...
  #1 (permalink)  
Antiguo 21/03/2012, 13:11
 
Fecha de Ingreso: marzo-2011
Mensajes: 74
Antigüedad: 13 años, 1 mes
Puntos: 1
Guardar NUevo registro o actualizar uno ya existente

Buen día, Estoy haciendo un guardado de registro y ademas leyendo otros de otra BD en total uso 2 BD en la primera obtengo los datos basicos y en la segunda guardo datos de un estudio:

Código:
$resultado=mysql_query("select * from laboratorio where ID like '".$_GET['ID']."' ORDER BY ID DESC");
$resultado2=mysql_query("select * from est_BH where idpa like '".$_GET['ID']."' ORDER BY ID DESC");
// medi es la variable del registro que consulto
$medi=$_GET['ID'];
echo" <html>";
$found = false;
$row2=mysql_fetch_array($resultado2);
if($row=mysql_fetch_array($resultado)){
echo"<form name='formulario1' action=est_BH.php?ID method='post' >
<input type='hidden' name='idx' value='".$row['ID']."'>
"// estos son los datos de la primera BD"
<table width='550' border='0' align='center' bgcolor='#33CCFF'>
";echo"<tr><td>".$row['ID']."-".$row['estudio']."</td><td></td></tr>";echo"
<tr><td>Nombre</td><td>".$row['nombre']."</td> </tr>
";echo"<tr><td>R.F.C.</td> <td>".$row['RFC']."</td> </tr>
";echo"<tr><td>Medico</td> <td>".$row['medic']."</td> </tr>
";echo"<tr><td>Edad</td><td>".$row['edad']."</td> </tr>
";echo"<tr><td>Sexo</td><td>".$row['sexo']."</td> </tr>
";echo"<tr><td>Fecha</td><td>".$row['fecha']."</td> </tr>
";echo
"<tr><td align='right'>Costo $</td><td>".$row['costo']."</td> </tr>
</table>
"// aqui leo los datos de la segunda BD si es que existen, si no solo seran datos en blanco"
<table>
<tr bgcolor='#CAE9F3'><td>PARAMETRO CUANTIFICADO</td><td>RESULTADO</td><td>CIFRAS DE REFERENCIA</tr>
<tr><td>ERITROCITOS</td><td><input type='text' name='eritrocitos' value='".$row2['eritrocitos']."' size='12' maxlength='12'></td><td><input type='text' name='creritrocitos' value='".$row2['creritrocitos']."' size='12' maxlength='12'></td></tr>
<tr><td>HEMOGLOBINA</td><td><input type='text' name='hemoglobina' value='".$row2['hemoglobina']."' size='12' maxlength='12'></td><td><input type='text' name='crhemoglobina' value='".$crhemoglobina."' size='12' maxlength='12'></td></tr>
<tr><td><input type='submit' name='Guardar' value='Guardar' align='right'></td></tr>

//idpa es el campo de la segunda BD donde guardo el valor de ID para saber a cual resitro pertenece
switch($row2['idpa'])
{
 case $medi: 
	@mysql_query ('UPDATE est_BH SET eritrocitos='."'".$_POST['eritrocitos']."'".', creritrocitos='."'".$_POST['creritrocitos']."'".',hemoglobina='."'".$_POST['hemoglobina']."'".',crhemoglobina='."'".$_POST['crhemoglobina']."'".' where idpa='."'".$medi."'");
echo ' RESULTADOS ACTUALIZADOS CORRECTAMENTE !';
	break;	

case NULL: 
	@mysql_query ('insert into est_BH ( idpa, eritrocitos,  creritrocitos, hemoglobina, ) values ('."'".$_POST['eritrocitos']."'".','."'".$_POST['ID']."'".','."'".$_POST['creritrocitos']."'".','."'".$_POST['hemoglobina']."'".')');
echo ' NUEVOS RESULTADOS GUARDADOS!';
	break;

	}}
El problema que tengo es que puedo guardar los registros y actualizarlos pero solo una cosa a la vez dependiendo del case que use primero, como seria la sintaxis para hacer ambas, gracias.

Última edición por daikyo; 21/03/2012 a las 13:18
  #2 (permalink)  
Antiguo 21/03/2012, 13:24
Avatar de chwc  
Fecha de Ingreso: julio-2008
Ubicación: Buenos Aires ! :D
Mensajes: 814
Antigüedad: 15 años, 8 meses
Puntos: 103
Respuesta: Guardar NUevo registro o actualizar uno ya existente

por ejemplo, puedes poner en el case $medi, las dos sentencias mysql seguidas
Código PHP:
Ver original
  1. case $medi:
  2.     @mysql_query ('UPDATE est_BH SET eritrocitos='."'".$_POST['eritrocitos']."'".', creritrocitos='."'".$_POST['creritrocitos']."'".',hemoglobina='."'".$_POST['hemoglobina']."'".',crhemoglobina='."'".$_POST['crhemoglobina']."'".' where idpa='."'".$medi."'");
  3. @mysql_query ('insert into est_BH ( idpa, eritrocitos,  creritrocitos, hemoglobina, ) values ('."'".$_POST['eritrocitos']."'".','."'".$_POST['ID']."'".','."'".$_POST['creritrocitos']."'".','."'".$_POST['hemoglobina']."'".')');
  4. echo ' RESULTADOS ACTUALIZADOS CORRECTAMENTE !';
  5.     break;

saludos
  #3 (permalink)  
Antiguo 21/03/2012, 13:27
 
Fecha de Ingreso: marzo-2011
Mensajes: 74
Antigüedad: 13 años, 1 mes
Puntos: 1
Respuesta: Guardar NUevo registro o actualizar uno ya existente

Cita:
Iniciado por chwc Ver Mensaje
por ejemplo, puedes poner en el case $medi, las dos sentencias mysql seguidas
Código PHP:
Ver original
  1. case $medi:
  2.     @mysql_query ('UPDATE est_BH SET eritrocitos='."'".$_POST['eritrocitos']."'".', creritrocitos='."'".$_POST['creritrocitos']."'".',hemoglobina='."'".$_POST['hemoglobina']."'".',crhemoglobina='."'".$_POST['crhemoglobina']."'".' where idpa='."'".$medi."'");
  3. @mysql_query ('insert into est_BH ( idpa, eritrocitos,  creritrocitos, hemoglobina, ) values ('."'".$_POST['eritrocitos']."'".','."'".$_POST['ID']."'".','."'".$_POST['creritrocitos']."'".','."'".$_POST['hemoglobina']."'".')');
  4. echo ' RESULTADOS ACTUALIZADOS CORRECTAMENTE !';
  5.     break;

saludos
Ok, ¿pero esto realiza ls 2 operaciones al mismo tiempo? la de guardar y actualizar o ¿las realiza de acuerdo a la situacion? y es que necesito que si el registro ya existe solo lo actualize, si no que lo guerde como un registro nuevo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:00.