Foros del Web » Creando para Internet » Diseño web »

Problema PHP y MYSql SOy novato.

Estas en el tema de Problema PHP y MYSql SOy novato. en el foro de Diseño web en Foros del Web. buenas, es mi primer post en este foro, y por ende soy nuevo en esto de php, mi problema es el siguiente, tengo un formulario ...
  #1 (permalink)  
Antiguo 13/06/2008, 21:03
 
Fecha de Ingreso: junio-2008
Mensajes: 1
Antigüedad: 9 años, 6 meses
Puntos: 0
Problema PHP y MYSql SOy novato.

buenas, es mi primer post en este foro, y por ende soy nuevo en esto de php, mi problema es el siguiente, tengo un formulario con campos "nombre, apellido y edad" y abajo una tabla que me muestra los mismos campos pero con registros de un mysql, al lado de cada registro tengo un link que dice modificar, cuando activo ese link se completan los datos del registros en el formulario y ahi me permitiria modificar los datos. Si no presiono modificar, y lleno los campos por mi cuenta, lo que hace es agregar a la base de datos los datos que coloque. Ahora bien, este es mi problema, yo quiero que este todo en una misma pagina, y lo que me esta sucediendo es que cuando hago el siguiente procedimiento no funciona como corresponde.

1. Abre la pagina, todo perfecto, debajo se ven los registros cargados en la base y los campos del form estan vacios

2. si presiono el link modificar, se llenan los campos, perfecto, mando el submit y los modifica

3. aca viene uno de mis problemas, si ahora lleno los campos por mi cuenta por q quiero agregar un registro a la base de datos, me vuelve a modificar el campo anterior..., yo lo que quiero en este paso es q agregue uno nuevo.

Les dejo aca el codigo, y disculpen que soy nuevo en esto, si necesitan mas datos diganme, gracias.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>

<?php

$link= mysql_connect("localhost","prueba","prueba");

mysql_select_db("prueba",$link);

if($_GET[modificar])
{
$consulta= "SELECT * FROM inv WHERE id='$_GET[modificar]'";
$result= mysql_query($consulta, $link);
$row2 = mysql_fetch_array($result);
$b= 1;
}

if($_POST[Submit])
{
if ( $b == 1 )
{
$consulta= "UPDATE inv SET nombre= '$_POST[nombre]', apellido= '$_POST[apellido]', edad= '$_POST[edad]' WHERE id='$_GET[modificar]'" ;
mysql_query($consulta, $link);
$b= 0;
}
elseif($_POST[Submit])
{$consulta= "INSERT INTO inv VALUES(NULL, '$_POST[nombre]', '$_POST[apellido]', '$_POST[edad]')";
mysql_query($consulta, $link);
}

}
var_dump($b, $consulta);

$consulta= "SELECT * FROM inv";

$result= mysql_query($consulta, $link);


?>
<form id="form" name="form" method="post" action="">
<table width="338" border="1">
<tr>
<th width="144" scope="col"><label>NOMBRE</label></th>
<th width="178" scope="col"><div align="center">


<input type="text" name="nombre" id="textfield" value="<? if ($_GET[modificar] && !$_POST[Submit])
{echo "$row2[nombre]";} ?> "/>
</div></th>
</tr>
<tr>
<th scope="row">APELLIDO</th>
<td><div align="center">
<input type="text" name="apellido" id="textfield2" value="<? if ($_GET[modificar] && !$_POST[Submit])
{echo "$row2[apellido]";} ?> " />
</div></td>
</tr>
<tr>
<th scope="row">EDAD</th>
<td><div align="center">
<input type="text" name="edad" id="textfield3" value="<? if ($_GET[modificar] && !$_POST[Submit])
{echo "$row2[edad]";} ?> " />
</div></td>
</tr>
</table>
<p>
<label>
<input type="submit" name="Submit" id="button" value="Submit" />
</label>
</p>
</form>

<table width="50%" border="1">
<tr>
<th scope="col">NOMBRE</th>
<th scope="col">APELLIDO</th>
<th scope="col">EDAD</th>
<th scope="col">&nbsp;</th>
</tr>
<? while($row = mysql_fetch_array($result)) {?>
<tr>
<td><? echo $row[nombre]; ?></td>
<td><? echo $row[apellido]; ?></td>
<td><? echo $row[edad]; ?></td>
<td><? echo "<a href= '?modificar=$row[id]'>Modificar</a>";?> </td>
</tr>
<? } ?>
</table>


</body>
</html>
  #2 (permalink)  
Antiguo 18/06/2008, 16:25
Avatar de the_web_saint  
Fecha de Ingreso: mayo-2008
Ubicación: localhost/tierra/america/panama
Mensajes: 1.229
Antigüedad: 9 años, 7 meses
Puntos: 43
Respuesta: Problema PHP y MYSql SOy novato.

Hola:

Porque cuando oprimes modificar no seteas una variable de session con un valor por ejemplo 'mod' y luego que haces la modificacion en la base de datos o cancelas la modificacion la vuelves a setear a 'new', de esta manera cuando llenes los campos del formulario revisaras esta variable de session y te dira si es uno nuevo o estas modificando.
No se si entendi bien tu problema??

Saludos...
__________________
..::The Saint::..
El pesimista se queja del viento; el optimista espera que cambie; el realista ajusta las velas.
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 16:39.