Código PHP:
<? if (isset($_REQUEST['enviar'])) {
require_once('../vars.php');
$_REQUEST['descripcion'] = str_replace("\"", """, $_REQUEST['descripcion']);
$_REQUEST['descripcion'] = str_replace('\'', '&%2339;', $_REQUEST['descripcion']);
$query = "UPDATE links SET nombre = '$_REQUEST[nombre]', descripcion = '$_REQUEST[descripcion]', categoria = '$_REQUEST[categoria]', archivo = '$_REQUEST[archivo]', enlace = '$_REQUEST[enlace]' WHERE links.id='$_REQUEST[id]'";
mysql_query ("$query")
or die('Invalid query: ' . mysql_error()); ?>
Link editado
<?
}
else
{
require_once('../vars.php');
$datoslinks = mysql_query("SELECT * FROM links WHERE links.id='$_REQUEST[id]'");
while ($link = mysql_fetch_array($datoslinks)) {
?>
quiero ver que sale en
$query = "UPDATE links SET nombre = '$_REQUEST[nombre]', descripcion = '$_REQUEST[descripcion]', categoria = '$_REQUEST[categoria]', archivo = '$_REQUEST[archivo]', enlace = '$_REQUEST[enlace]' WHERE links.id='$_REQUEST[id]'";
por eso si podes hace un echo de esa variable para ver si no hay un error de sintaxis, ya que no te esta haciendo el update lo mas seguro que haya algun error que se nos esta escapando.