Foros del Web » Programando para Internet » PHP »

Error UPDATE en PHP

Estas en el tema de Error UPDATE en PHP en el foro de PHP en Foros del Web. Hola muy buenas, tengo el siguiente codigo fuente y siempre se me va a header("Location: errorconsultabbdd.php"); no se porque y es que estoy revisando el ...
  #1 (permalink)  
Antiguo 27/12/2008, 10:34
 
Fecha de Ingreso: agosto-2007
Mensajes: 248
Antigüedad: 17 años, 3 meses
Puntos: 1
De acuerdo Error UPDATE en PHP

Hola muy buenas, tengo el siguiente codigo fuente y siempre se me va a header("Location: errorconsultabbdd.php"); no se porque y es que estoy revisando el codigo y no encuentro el fallo y no se me hace bien la actualizacion con la sentencia UPDATE. Alguien me podria iluminar al respecto? Muchas Gracias de antemano.-


Código:
$id_pais = htmlentities ($_POST["id_pais"]); //Identificador Pais Original
$pais_actualizar = htmlentities ($_POST["pais"]); //Modificacion del Pais

if (($pais_actualizar != NULL) and ($id_pais != NULL))
	{
	  //$pais_actualizar = mysql_real_escape_string ($pais_actualizar);
	  
	  $sql = "UPDATE FROM T_PAISES SET PAIS='$pais_actualizar' WHERE ID_PAIS='$id_pais'";
	    
	  $resultado = mysql_query($sql);
	  	  
	  //------- Protege contra una inyección SQL -----------
	  if (get_magic_quotes_gpc(  )) 
	    {  
      		$resultado = stripslashes($resultado);
	  	}
	  $resultado = mysql_real_escape_string($resultado);
	  //-----------------------------------------------------

      //Si el resultado no es satisfactorio mostramos mensaje correspondiente
	  //por pantalla mediante fichero .php desarrollado por nosotros
	  
      if (!$resultado)
        {     	 
		 mysql_close ($connection); 
         header("Location: errorconsultabbdd.php");			 
         exit(); 		 
        }
		
      else {    
	         mysql_close ($connection); 
			 header("Location: paises_mantenimiento.php");			 
             exit(); 	
	        }
	  } //fin IF pais <> null and id_pais <> null
		
	} //fin ELSE
  #2 (permalink)  
Antiguo 27/12/2008, 10:46
 
Fecha de Ingreso: agosto-2008
Mensajes: 271
Antigüedad: 16 años, 3 meses
Puntos: 2
Respuesta: Error UPDATE en PHP

El ID PAIS es una cadena de caracteres(VARCHAR) o un valor numerico, si es un varchar tu consulta no se ejecutara ya que estas pasando el argumento ID entre comillas simples

Saludos
  #3 (permalink)  
Antiguo 27/12/2008, 10:49
 
Fecha de Ingreso: enero-2008
Mensajes: 8
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: Error UPDATE en PHP

Estas escapando un resultado de la bbdd. Mysql_real_escape_string espera una cadena. La limpieza de parámetros debería hacerla antes de ejecutar la consulta.
  #4 (permalink)  
Antiguo 27/12/2008, 10:52
 
Fecha de Ingreso: agosto-2008
Mensajes: 271
Antigüedad: 16 años, 3 meses
Puntos: 2
Respuesta: Error UPDATE en PHP

El ID PAIS es una cadena de caracteres(VARCHAR) o un valor numerico, si es un varchar tu consulta no se ejecutara ya que estas pasando el argumento ID entre comillas simples


ERROR: UPDATE FROM T_PAISES SET PAIS='$pais_actualizar' WHERE ID_PAIS='$id_pais'";

La consulta UPDATE no lleva la sentencia SQL FROM

forma correcta : UPDATE 'nombre table' SET campos WHERE condiciones
$sql = "UPDATE T_PAISES SET PAIS='" . $pais_actualizar. "' WHERE ID_PAIS='" . $id_pais ."'"


Saludos
  #5 (permalink)  
Antiguo 27/12/2008, 10:54
 
Fecha de Ingreso: agosto-2007
Mensajes: 248
Antigüedad: 17 años, 3 meses
Puntos: 1
De acuerdo Respuesta: Error UPDATE en PHP

Tengo la solucion, vaya que metedura de pata ¡¡¡

EL problema estaba en la consulta a la BBDD concretamente en la sintaxis SQL.

Código:
$sql = "UPDATE FROM T_PAISES SET PAIS='$pais_actualizar' WHERE ID_PAIS='$id_pais'";

Quitando el FROM funciona bien, bueno repasaré SQL.
Código:
$sql = "UPDATE T_PAISES SET PAIS='$pais_actualizar' WHERE ID_PAIS='$id_pais'"; 

- ID_PAIS lo tengo como un integer autoincremental y not null ya que es clave primaria de la tabla T_PAISES.

- Mysql_real_escape_string espera una cadena --> Efectivamente $pais_actualizar es una variable de tipo string con lo cual es una cadena de caracteres.


Gracias a Todos por colaborar ¡¡¡
  #6 (permalink)  
Antiguo 27/12/2008, 10:54
 
Fecha de Ingreso: enero-2008
Mensajes: 8
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: Error UPDATE en PHP

Perdona, no me había dado cuenta. La sentencia SQL esta mal, si es update te sobraría el "from"

Última edición por gruoncete; 27/12/2008 a las 10:55 Razón: oooops, se me han adelantado
  #7 (permalink)  
Antiguo 27/12/2008, 11:00
 
Fecha de Ingreso: diciembre-2008
Ubicación: sullana, Piura
Mensajes: 106
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: Error UPDATE en PHP

mejor aprende a papelito, como la algoritmica. saludos
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 14:44.