Foros del Web » Programando para Internet » PHP »

Problema al actualizar datos en una DB MySQL

Estas en el tema de Problema al actualizar datos en una DB MySQL en el foro de PHP en Foros del Web. Buenas. Estoy empezando con esto del PHP. Ahora estoy intentando hacer un sistema de noticias, pero me ha dado un problema al que no le ...
  #1 (permalink)  
Antiguo 19/10/2006, 14:04
 
Fecha de Ingreso: mayo-2005
Mensajes: 55
Antigüedad: 19 años
Puntos: 0
Problema al actualizar datos en una DB MySQL

Buenas. Estoy empezando con esto del PHP. Ahora estoy intentando hacer un sistema de noticias, pero me ha dado un problema al que no le encuentro el error:
Es en la página para editar las noticias ya publicadas anteriormente. Se me muestran los datos del registro seleccionado, pero si los modifico y le doy a enviar, los cambios no se guardan.
Les dejo el código para ver si encontráis el error :)
Código PHP:
<?php

$id
=$_GET[id];
include(
"conexion.php");

// Me conecto a la base de datos
$conexion=mysql_connect($host$user$pass);
mysql_select_db($db$conexion);


if (
$REQUEST_METHOD<>"POST")
 {

   
$result mysql_query("select * from noticias where id_noticia='$id'",$conexion); //mysql_query envia una instrucción SQL al servidor
   
$myrow=mysql_fetch_array($result);
?>
    
    <form method="post" action="editar_noticias.php">
    
        Titulo<br>
        <input name="titulo" type="text" value="<? echo $myrow[titulo]; ?>">
        
        <br>Categoria<br>
        <input name="categoria" type="text" value="<? echo $myrow[categoria]; ?>">
        
        <br>Descripcion<br>
        <textarea name="descripcion" cols="45" rows="7"><? echo $myrow[descripcion]; ?></textarea>
        <br>
        
        <input type="submit" value="Enviar" name="envio">
        
        <input type="hidden" name="id_noticia" value="<? echo $myrow[id_noticia]; ?>">
        
    </form>
    
<?
 
} else {

   
// Armo el update
  
mysql_query("update noticias Set titulo='$titulo',categoria='$categoria',descripcion='$descripcion' where id_noticia='$id'"$conexion);           
                  
           
  
   if (!
mysql_error())
    {
        echo 
"La noticia se ha actualizado exitosamente<br>";
    }
   else
    {
        echo 
"ERROR al actualizar la noticia - "mysql_errno().":"mysql_error()."<br>";
    }

// Cierro la conexión
mysql_close($conexion);



}
?>
por si acaso, también os dejo los datos de la tabla:

TABLA: noticias

id_noticia INT(5) NOT NULL AUTO_INCREMENT
fecha datetime not null
titulo varchar(40)
categoria varchar(20)
descripcion TEXT
PRIMARY KEY (id_noticia)
  #2 (permalink)  
Antiguo 19/10/2006, 14:49
Avatar de chr_c  
Fecha de Ingreso: junio-2003
Mensajes: 204
Antigüedad: 20 años, 11 meses
Puntos: 0
lo que capturas del formulario son variables de entorno $_POST... eso te falta en el update
  #3 (permalink)  
Antiguo 20/10/2006, 00:02
 
Fecha de Ingreso: mayo-2005
Mensajes: 55
Antigüedad: 19 años
Puntos: 0
Ah, vale gracias chr_c
Luego probaré a ver
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 09:32.