Foros del Web » Programando para Internet » PHP »

tengo problemas al guardar

Estas en el tema de tengo problemas al guardar en el foro de PHP en Foros del Web. hola buenas noches tengo un problema al guardar este es el error que me manda Cita: Conexión con la base de datos conseguida. Notice: Undefined ...
  #1 (permalink)  
Antiguo 16/12/2006, 17:58
Avatar de a83
a83
 
Fecha de Ingreso: noviembre-2005
Ubicación: Santiago de chile
Mensajes: 637
Antigüedad: 18 años, 5 meses
Puntos: 1
tengo problemas al guardar

hola buenas noches tengo un problema al guardar
este es el error que me manda

Cita:
Conexión con la base de datos conseguida.

Notice: Undefined index: id in c:\archivos de programa\easyphp1-8\www\php2\control\e\guardar.php on line 4

Notice: Undefined index: prioridad in c:\archivos de programa\easyphp1-8\www\php2\control\e\guardar.php on line 5

Notice: Undefined index: cambios in c:\archivos de programa\easyphp1-8\www\php2\control\e\guardar.php on line 6

Notice: Undefined index: autor in c:\archivos de programa\easyphp1-8\www\php2\control\e\guardar.php on line 7
y este es el codigo
Código PHP:
<?php 
   
include("../conexion.php"); 
   
$link=Conectarse();
   
$id=$_GET['id']; 
   
$prioridad=$_GET['prioridad'];  
   
$cambios=$_GET['cambios']; 
   
$autor =$_GET['autor'];  
  
   
mysql_query("insert into proyectos (id,prioridad,cambios,autor) values
    ('$id','$prioridad','$cambios','$autor')"
,$link); 
  
  
// header("Location: ingreso.php");  no funciona malo 

?>
  #2 (permalink)  
Antiguo 16/12/2006, 17:59
Avatar de a83
a83
 
Fecha de Ingreso: noviembre-2005
Ubicación: Santiago de chile
Mensajes: 637
Antigüedad: 18 años, 5 meses
Puntos: 1
Re: tengo problemas al guardar

es guardar perdon
  #3 (permalink)  
Antiguo 16/12/2006, 18:28
Avatar de lrunge  
Fecha de Ingreso: agosto-2005
Ubicación: En algun lugar de Caracas
Mensajes: 165
Antigüedad: 18 años, 9 meses
Puntos: 4
Re: tengo problemas al guaradar

Cita:
Iniciado por a83 Ver Mensaje
hola buenas noches tengo un problema al guardar
este es el error que me manda



y este es el codigo
Código PHP:
<?php 
   
include("../conexion.php"); 
   
$link=Conectarse();
   
$id=$_GET['id']; 
   
$prioridad=$_GET['prioridad'];  
   
$cambios=$_GET['cambios']; 
   
$autor =$_GET['autor'];  
  
   
mysql_query("insert into proyectos (id,prioridad,cambios,autor) values
    ('$id','$prioridad','$cambios','$autor')"
,$link); 
  
  
// header("Location: ingreso.php");  no funciona malo 

?>
Fijate que te esta diciendo que no estan definidas esas variables en guardar.php

Undefined index el error te lo da cuando abres el documento y PHP busca el valor de esas variables y no consigue nada, esta buscando los datos en el URL y no hay nada!!!

Deberias tener algo asi:

Código PHP:
guardar.php?id=valorid&prioridad=valorprioridad&cambios=valorcambios&autor=valorautor 
Asi, el sistema agarra el valor de ID, prioridad, cambios y autor que viene de la URL y te los guardaria en tu bse de datos

Intenta a ver que tal te va
  #4 (permalink)  
Antiguo 16/12/2006, 20:01
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 4 meses
Puntos: 129
Re: tengo problemas al guardar

Deberías validar toda variable que ingrese a tu script PHP de proceso .. Minimo que "exista" antes de pretender accederla:

Código PHP:
if (isset($_GET['id'])){
// accedes a $_GET['id']


El error que observas te dice que no está definida alguna de las variables que propagas en el URL o mejor dicho que accedes sin saber si existe o no (he de ahí que te comento que debes "ver primero" si existe antes de usarla.

El error no es más que un "notice" .. un aviso de que estás programando "mal" .. y que se puede mejorar .. aunque también se puede ordenar a PHP que "oculte" mensajes de error de ese tipo (notice) y que no los muestre aunque no es la mejor opción pero ahí está:

error_reporting()
www.php.net/error_reporting

Por otro lado .. no sé de donde llegan esos datos (esas variables) .. probablemente sean de un formulario que definistes como "method" el "POST" y tu en tu script PHP los intentas recoger en "GET" .. siendo que no están ahí sino en POST ($_POST) ..

Si indicas el código de donde envias esos datos a ese script que presentas se te podrá orientar mejor al respecto. Igualmente todo el tema de validaciones .. el isset() y demás es válido y debes aplicarlo: NUNCA confies en las variables que llegan desde otros scripts/Páginas.

De hecho te recomiendo usar mysql_real_escape_string() aplicado a tus variables que llegan en POST o GET o externas en general antes de aplicar tu SQL (mysql_query()) .. así evitaras problemas de "SQL injection" ...

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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 07:45.