Foros del Web » Programando para Internet » PHP »

Problema al Editar Registro

Estas en el tema de Problema al Editar Registro en el foro de PHP en Foros del Web. Hola tengo un formulario en php y funciona bien y no me da error en el codigo pero al realizar la modificación me da el ...
  #1 (permalink)  
Antiguo 27/11/2007, 16:54
 
Fecha de Ingreso: noviembre-2004
Ubicación: Caracas-Venezuela
Mensajes: 30
Antigüedad: 19 años, 4 meses
Puntos: 0
Sonrisa Problema al Editar Registro

Hola tengo un formulario en php y funciona bien y no me da error en el codigo pero al realizar la modificación me da el siguiente error:

"You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE id =1' at line 1"

En la tabla de MySQL esta declarado un campo como "autonumerico", uno "Date", otro "Decimal" y los demas son simples campos de texto.

La primera linea de la tabla sql dice "SELECT * FROM `directorio` WHERE 1", sospecho que aqui esta el error pero hice diferentes pruebas y ninguna funciono.

Ademas dejo el codigo php que estoy utilizando:
<?php
include ("includes/config.php");
include ("includes/funciones.php");

//si la forma ha sido enviada editamos el registro.
if(isset($_POST['submit'])){
//nos conectamos a mysql
$cnx = conectar ();

$sql = "UPDATE directorio SET ";
$sql .= "nombre ='".$_POST['nombre']."',";
$sql .= "apellido ='".$_POST['apellido']."',";
$sql .= "dni ='".$_POST['dni']."',";
$sql .= "ciudad ='".$_POST['ciudad']."',";
$sql .= "email ='".$_POST['email']."',";
$sql .= "telfijo ='".$_POST['telfijo']."',";
$sql .= "telmovil ='".$_POST['telmovil']."',";
$sql .= "agente ='".$_POST['agente']."',";
$sql .= "fechaing ='".$_POST['fechaing']."',";
$sql .= "publicidad ='".$_POST['publicidad']."',";
$sql .= "saldo ='".$_POST['saldo']."',";
$sql .= "ganancia ='".$_POST['ganancia']."',";
$sql .= " WHERE id =".$_POST['id'];
$res = mysql_query($sql) or die(mysql_error());
echo "Registro actualizado.<br><a href='listado.php'>regresar</a>";
mysql_close($cnx);
exit;
}

//si no hay id, no puede seguir.
if(empty($_GET['id'])){
header("Location: listado.php");
exit;
}

//nos conectamos a mysql
$cnx = conectar ();

//consulta para mostrar los datos.
$sql = "SELECT * FROM directorio WHERE id=".$_GET['id'];
$res= mysql_query($sql) or die (mysql_error());

if( mysql_num_rows($res) >0){
//si hay resultados hacemos la forma.
?>
<form name="form1" method="post" action="<?echo $_SERVER['PHP_SELF'];?>">
<table width="400" border="1" cellpadding="0" cellspacing="0">
<?
//impresión de los datos.
while ($fila = mysql_fetch_array($res)) {
?>
<tr>
<td width="150">id</td>
<td><input name="id" type="hidden" id="id" value="<?echo $fila['id'];?>"><? echo $fila['id'];?></td>
</tr>
<tr>
<td>Nombre</td>
<td><input name="nombre" type="text" id="nombre" value="<? echo $fila['nombre'];?>"></td>
</tr>
<tr>
<td>Apellido</td>
<td><input name="apellido" type="text" id="apellido" value="<? echo $fila['apellido'];?>"></td>
</tr>
<tr>
<td>DNI</td>
<td><input name="dni" type="text" id="dni" value="<? echo $fila['dni'];?>"></td>
</tr>
<tr>
<td>Ciudad</td>
<td><input name="ciudad" type="text" id="ciudad" value="<? echo $fila['ciudad'];?>"></td>
</tr>
<tr>
<td>Email</td>
<td><input name="email" type="text" id="email" value="<? echo $fila['email'];?>"></td>
</tr>
<tr>
<td>Telf Fijo</td>
<td><input name="telfijo" type="text" id="telfijo" value="<? echo $fila['telfijo'];?>"></td>
</tr>
<tr>
<td>Telf Móvil</td>
<td><input name="telmovil" type="text" id="telmovil" value="<? echo $fila['telmovil'];?>"></td>
</tr>
<tr>
<td>Agente</td>
<td><input name="agente" type="text" id="agente" value="<? echo $fila['agente'];?>"></td>
</tr>
<tr>
<td>Fecha de Ingreso</td>
<td><input name="fechaing" type="date" id="fechaing" value="<? echo $fila['fechaing'];?>"></td>
</tr>
<tr>
<td>Publicidad</td>
<td><input name="publicidad" type="text" id="publicidad" value="<? echo $fila['publicidad'];?>"></td>
</tr>
<tr>
<td>Saldo</td>
<td><input name="saldo" type="decimal" id="saldo" value="<? echo $fila['saldo'];?>"></td>
</tr>
<tr>
<td>Ganancia</td>
<td><input name="ganancia" type="decimal" id="ganancia" value="<? echo $fila['ganancia'];?>"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td align="right"><input type="submit" name="submit" value="enviar"></td>
</tr>
</table>
</form>
<?
}
}else{
//no hay resultados, id malo o no existe.
echo "no se obtuvieron resultados";
}
mysql_close($cnx);
?>

Gracias
  #2 (permalink)  
Antiguo 27/11/2007, 17:56
Avatar de BrujoNic
Super Moderador
 
Fecha de Ingreso: noviembre-2001
Ubicación: Costa Rica/Nicaragua
Mensajes: 16.935
Antigüedad: 22 años, 5 meses
Puntos: 655
Re: Problema al Editar Registro

Trasladado de BD a PHP. Favor no poner código de programación en BD.

Función de la sección de Base de Datos
__________________
La tecnología está para ayudarnos. No comprendo el porqué con esa ayuda, la gente escribe TAN MAL.
NO PERDAMOS NUESTRO LINDO IDIOMA ESPAÑOL
  #3 (permalink)  
Antiguo 27/11/2007, 20:00
Avatar de liebe13  
Fecha de Ingreso: octubre-2006
Ubicación: peru
Mensajes: 224
Antigüedad: 17 años, 5 meses
Puntos: 3
Re: Problema al Editar Registro

oe man envias con post recoges con post y ahces la consulta con get ahi ta tu error
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 21:44.