Foros del Web » Programando para Internet » PHP »

Agregar y Modificar con tablas relacionadas en PHP

Estas en el tema de Agregar y Modificar con tablas relacionadas en PHP en el foro de PHP en Foros del Web. A continuacion el codigo: <?php include_once'conecta.php'; if($_GET["modificar"]<>0){ $id=isset($_REQUEST['modificar'])?$_REQUEST['modificar']:0; $sqlm="SELECT * FROM localidad WHERE id_localidad=$id"; $resulm=mysql_query($sqlm); $rowm=mysql_fetch_array($resulm); $id=$rowm["id_localidad"]; $idarea=$rowm['id_area']; $descripcion=$rowm["localidad"]; } # Verificamos que el formulario ...
  #1 (permalink)  
Antiguo 22/03/2010, 21:06
 
Fecha de Ingreso: marzo-2010
Mensajes: 3
Antigüedad: 14 años, 1 mes
Puntos: 0
Agregar y Modificar con tablas relacionadas en PHP

A continuacion el codigo:

<?php
include_once'conecta.php';
if($_GET["modificar"]<>0){
$id=isset($_REQUEST['modificar'])?$_REQUEST['modificar']:0;
$sqlm="SELECT * FROM localidad WHERE id_localidad=$id";

$resulm=mysql_query($sqlm);
$rowm=mysql_fetch_array($resulm);
$id=$rowm["id_localidad"];
$idarea=$rowm['id_area'];
$descripcion=$rowm["localidad"];
}

# Verificamos que el formulario no ha sido enviado aun
$postback = (isset($_POST["enviar"])) ? true : false;

if($postback and $_POST['descripcion']!='' ){
$id=$_POST["id"];
$idarea=$_POST['id'];
$descripcion=$_POST["descripcion"];

if($_POST["id"]>0 ){


mysql_query(" UPDATE localidad
SET localidad = '$descripcion', idarea = '$idarea'
WHERE id_localidad= $id") ;
$descripcion='';
header("Location: inserloc.php");
}else{
$sql = "INSERT INTO localidad (localidad, id_area)
VALUES ('$descripcion', $idarea)";
mysql_query($sql);
$postback = false;
$descripcion='';
mensajeria (' Registro Guardado Con Exito');

}
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es">
<head>
<title>Insertar Archivos</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link href="css/listados.css" type="text/css" rel="stylesheet" />
<link href="css/lm_forms.css" type="text/css" rel="stylesheet" />
<link href="css/pestanas.css" type="text/css" rel="stylesheet" />
<link rel="stylesheet" title="Principal-Aplicaciones" type="text/css" href="main-aplicacion.css" />

<SCRIPT LANGUAGE="JavaScript">
function validas() {
if (document.frmblob.nombre.value.length==0){
alert ('Nomnbre Vacio');
}
if (document.frmblob.nombre_usuario.value.length==0){
alert ('Login Vacio');
}
if (document.frmblob.clave_usuario.value.length==0){
alert ('Password Vacio');
}
}
</SCRIPT>
<style type="text/css">
</style>
</head>
<body>
<a href="principal.php" ><span class="Text-menu" >VOLVER</span></a>
<span class="Titulo-Aplicacion">INGRESAR Y MODIFICAR LOCALIDAD</span>
<span class="Separador_Modulo"> </span>
<div class="Contenedor-Formulario">
<form id="form4" name="form4" method="post" action="inserloc.php">
<div class="Contenedor-Elemneto-Formulario">
<span class="Sub-Titulo-Formulario"> Localidad:</span>
<input name="descripcion" id="descripcion" autocomplete="off" value="<?php echo $descripcion?>" size="30" type="text" maxlength="50" class="input-style-adm" />
</div>
<span class="Sub-Titulo-Formulario">Area:
</span>
<br>
<?php $sql1=mysql_query("select * from area where id_area"); ?>
<select name="area" id="area">
<?php while($rows=mysql_fetch_array($sql1)){ ?>
<option value="<?php echo $rows['id_area']?>" <?php if($area==$rows['id_area']){?><?php }?>><?php echo $rows['area']?></option>
<?php } ?>
</select>
<br><br/>
<input name="id" type="hidden" readonly="readonly" value="<?php echo $id?>" />
<div class="Contenedor-Elemneto-Formulario" id="Contenedor-Elemneto-Formulario-aux">
<p>
<input name="enviar" id="enviar" onclick="validas()" class="Boton" type="submit" value="Aceptar" />
</p>
<div class="Final-Boton"></div>
<div class="Principio-Boton"> </div>
<input name="Cancelar" class="Boton" type="reset" value="Cancelar" />
<div class="Final-Boton"> </div>
</div>
</form>
</div>
<table width="100" border="1">
<span class="Titulo-Aplicacion">Listado de Localidad</span>
<span class="Separador_Modulo"></span>
<tr>
<th scope="col"><div class="Tabla-Elemento-Encabezado" >Id</div></th>
<th scope="col"><div class="Tabla-Elemento-Encabezado" >Area</div></th>
<th scope="col"><div class="Tabla-Elemento-Encabezado" >Locadlidad</div></th>
<th scope="col"><div class="Tabla-Elemento-Encabezado" >Accion</div></th>
</tr>

<?php
$sql = "SELECT * FROM localidad ORDER BY id_localidad limit 20;";
$result = mysql_query($sql);
// $lista = "";

if($result){
while ($row=mysql_fetch_array($result)){

?>
<tr>
<td><div class="Tabla-Elemento"><?php echo $row[id_localidad]?></div></td>
<td><div class="Tabla-Elemento"><?php echo $row[area]?></div></td>
<td><div class="Tabla-Elemento"><?php echo $row[localidad]?></div></td>
<td><div class="Tabla-Elemento"><a href=inserloc.php?modificar=<?php echo $row[id_localidad]?>>Editar</a></div></td>
</tr>
<?php }
}
?>
</table>
</body>
</html>

REQUIERO

Antes debe señalar lo siguiente:

El código es el modelo que he usado para los ingreso de datos en las
tablas no relacionadas.
Ahora tengo en la base de datos "asignaciones" las tablas:

area: (id_area, area)
localidad: (id_localidad, id_area, localidad)

Para agregar un nuevo registro, edito el campo localidad, el area lo
consulto desde la tabla area y lo despliedo en una lista, de la lista
selecciono un área y actualice el campo area1 y fije la que guardare
nueva. Cuando clickee ACEPTAR deberia guardar en la tabla LOCALIDAD
los campos indicados anteriormente.

En caso de seleccionar editar para modificar el registro requiero:

Que despliegue en el campo localidad, el dato seleccionado en la consulta
y en el campo area1 me coloque el area que posee el registro actual, a
un lado que despligue la lista de area si selecciono otra actualice el
campo area1 que mostre

Actualmente no me agrega, ni me modifica

Espero haberme explicado lo mejor posible.

--
RichardS;)

Etiquetas: modificar, relacionadas, tablas
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 19:50.