Foros del Web » Programando para Internet » PHP »

Porque da error... ????

Estas en el tema de Porque da error... ???? en el foro de PHP en Foros del Web. este codigo es para actualizar una BD y me da error if ($_GET['accion']=="modificar2"){ $id=$_POST['id']; $passwordnuevo=$_POST['nuevopassword']; $nombrenuevo=$_POST['nuevonombre']; if ($passwordnuevo=="" or $nuevonombre=="") { header ("Location: $pag?modificar=modificar&error=1"); exit; ...
  #1 (permalink)  
Antiguo 14/05/2003, 19:47
Avatar de nuevo  
Fecha de Ingreso: mayo-2003
Ubicación: Spain
Mensajes: 2.009
Antigüedad: 20 años, 11 meses
Puntos: 2
Pregunta Porque da error... ????

este codigo es para actualizar una BD y me da error


if ($_GET['accion']=="modificar2"){
$id=$_POST['id'];
$passwordnuevo=$_POST['nuevopassword'];
$nombrenuevo=$_POST['nuevonombre'];

if ($passwordnuevo=="" or $nuevonombre=="") {
header ("Location: $pag?modificar=modificar&error=1");
exit;
}

mysql_query("UPDATE $sql_tabla SET ('','password='$passwordnuevo','nombre='$nombrenue vo') WHERE id=$id") or die(mysql_error());
mysql_close ();
header ("Location: $pag");
exit;
}


el error es este:

You have an error in your SQL syntax near '('','password='23','nombre='xxxxxxx') WHERE id=328' at line 1

nadie sabe lo que le pasa...
he probado a cambiar esta linea
mysql_query("UPDATE $sql_tabla SET ('','password='$passwordnuevo','nombre='$nombrenue
vo') WHERE id=$id") or die(mysql_error());


por esta otra y nada.... ahora no da error... pero tampoco cambia el registro... simplemente no hace nada...
$sSQL="Update $sql_tabla Set nick = '$nivelnuevo' where id=$id "or die(mysql_error());
el codigo entero es este...

if ($_GET['accion']=="modificar"){

cabeceraHTML();
$id_mod_nivel= $_GET['id'];
$usuario_consulta = mysql_query("SELECT id,nick FROM $sql_tabla WHERE id=$id_mod_nivel") or die("No se pudo realizar la consulta a la Base de datos");
while($resultados = mysql_fetch_array($usuario_consulta)) {

echo <<< HTML
<form method="post" action="$pag?accion=modificar2">
<input type="hidden" name="id" value="$resultados[id]">
<table width="399" border="1" cellspacing="0" cellpadding="4" align="center">
<tr>
<td colspan="2" height="30" bgcolor="#0099FF">
<div align="center"><b><font face="Verdana, Arial, Helvetica, sans-serif" size="2"">.:
Modificar Registros Usuarios :.</font></b></div>
</td>
</tr>
<tr bgcolor="#FFFFCC">
<td width="185">
<div align="right"><font face="Verdana, Arial, Helvetica, sans-serif" size="2">Nick name : </font></div></td>
<td width="192"><b><font face="Verdana, Arial, Helvetica, sans-serif" size="1" color="#CC0066">$resultados[nick]</font>
</font></b></td>
</tr>
<tr bgcolor="#FFFFCC">
<td width="185">
<div align="right"><font face="Verdana, Arial, Helvetica, sans-serif" size="2">Nuevo nick name : </font></div>
</td>
<td width="192"><b><font face="Verdana, Arial, Helvetica, sans-serif" size="2"><input type="text" name="nuevonickname" class="imputbox" size="29" maxlength="29"></font></b></td>
</tr>


<tr bgcolor="#FFFFCC">
<td colspan="2" height="40">
<div align="center">
<input type="submit" name="Submit" value=" Actualizar " class="botones" ><br>

</div>
</td>
</tr>
</table>
</form>
HTML;
}
mysql_free_result($usuario_consulta);
mysql_close();
}
}
if ($_GET['accion']=="modificar2"){
$id=$_POST['id'];
$nivelnuevo=$_POST['nuevonickname'];
//$nuevopostname=$_POST['nuevopostname'];

if ($nivelnuevo=="") {
header ("Location: $pag?modificar=modificar&error=1");
exit;
}

$sSQL="Update $sql_tabla Set nick = '$nivelnuevo' where id=$id "or die(mysql_error());

//echo $sSQL;

mysql_close ();
header ("Location: $pag");
exit;
}


he preguntado esto= echo $sSQL; y esta es la respuesta...
donde el id es "328" y el nuevo user del formulario que puse es "nuevouser"


Update usuarios Set nick = 'nuevouser' where id=328

que cosa mas rara... no da error y encima me contesta bien la pregunta.... o eso creo yo...

Última edición por nuevo; 14/05/2003 a las 19:58
  #2 (permalink)  
Antiguo 14/05/2003, 20:13
Avatar de Mickel  
Fecha de Ingreso: mayo-2002
Ubicación: Lima, Peru
Mensajes: 4.619
Antigüedad: 21 años, 11 meses
Puntos: 7
Prueba

$squery="UPDATE ".$sql_tabla." SET password='".$passwordnuevo."',nombre='".$nombrenue vo."' WHERE id=".$id;
mysql_query($squery) or die(mysql_error());
__________________
No tengo firma ahora... :(
  #3 (permalink)  
Antiguo 14/05/2003, 20:14
Avatar de nuevo  
Fecha de Ingreso: mayo-2003
Ubicación: Spain
Mensajes: 2.009
Antigüedad: 20 años, 11 meses
Puntos: 2
gracias amigo ya ta ....saludos
__________________
3w.valenciadjs.com
3w.laislatv.com
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 12:47.