Ver Mensaje Individual
  #1 (permalink)  
Antiguo 14/05/2003, 19:47
Avatar de nuevo
nuevo
 
Fecha de Ingreso: mayo-2003
Ubicación: Spain
Mensajes: 2.009
Antigüedad: 21 años
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