Foros del Web » Programando para Internet » PHP »

borrar campo o editarlo

Estas en el tema de borrar campo o editarlo en el foro de PHP en Foros del Web. Hola a todos, estoy intentando realizar una aplicación sencilla, pero me ha surgido un problema que me ha dejado atascado. Por más que he mirado ...
  #1 (permalink)  
Antiguo 21/08/2010, 18:13
 
Fecha de Ingreso: enero-2006
Mensajes: 76
Antigüedad: 18 años, 10 meses
Puntos: 1
borrar campo o editarlo

Hola a todos, estoy intentando realizar una aplicación sencilla, pero me ha surgido un problema que me ha dejado atascado. Por más que he mirado y probado no encuentro solución, y más que nada es porque no me da error, solo que tampoco realiza lo que yo quiero que haga.

Resumiré lo que quiero hacer y después expondré mi código:
La aplicación es una muy común, se trata de un sistema de Login y registro, donde se elige la opción Login o Registro.
Registro: se piden los datos; nombre, Pass, repetir Pass, y una dirección de correo electrónico. Después se comprueba si cumplen los parámetros exigidos, después de comprueba que el nombre no esté ya registrado y en caso de pasar este filtro, se genera un código aleatorio de letras y números, y se añaden a una base de datos de mysql, el nombre, Pass, dirección y código, después se envía este mismo código a la dirección ingresado.
Login: el Login es un formulario como el registro, donde se pide que ingrese un nombre y una Password, después en php se comprueba que el nombre existe, si es así, se comprueba si tiene código asociado al nombre dado, si es así se pasa a la página de confirmación de cuenta, si no tiene código, entonces la cuenta ya está confirmada y comprueba la Pass, si es correcta, se abre sesión y se da paso a la página para clientes.
Pagina de confirmación: se pide un código al usuario y este es comparado con el asociado en la base de datos con el nombre dado anteriormente, si no coincide, se informa del error y se vuelve a la página del Login, si coincide, se borra el código de confirmación asociado al nombre y se vuelve a la página del Login.
Hasta aquí todo parece correcto, y en principio todo funciona bien, el registro, el Login, envío de correo, comprobación del código… todo eso lo hace la aplicación, pero cuando confirma el código, no consigo borrar el campo o editarlo para dejarlo en blanco, vacio o con un valor arbitrario que me indique que está confirmado.

Decirles que no me da error, pero no me hace lo que yo quiero, es decir, modificar el campo.
En un principio probé a borrar el campo, y no me hacia nada, después averigüé que no se puede borrar un campo, sino un registro entero, así que como el código no me funcionaba lo hice a mano (trabajo en wampserver, en modo local) y copié el código sql generado, y lo añadí a mi código, pero el resultado era el mismo.
El usuario que uso tiene todos los privilegios puestos.

Código PHP:
<?php
include ('conectarse.php');//me conecto a la BD
$var1=$_GET['confirmo'];//obtengo el código ingresado por el usuario
$var2=$_GET['name'];//ahora el nombre de usuario
$var3=$_GET['cambio'];//el código asociado al nombre en la BD

// comprueba que el código ingresado es el correcto
if ($var1==$var3){
 
// cuenta confirmada correctamente
 
 // conectamos con la BD y borramos registro de confirmación
  
$link=conectarse();
   
$sql="UPDATE `basedatos`.`registro` SET `confirmacion` = '' WHERE `registro`.`nombre` = $var2 LIMIT 1";//asi es como he dejado el código ahora, es el que me genero el phpmyadmin

   
mysql_query($sql,$link);
   
mysql_close($link);
   echo 
'La confirmación se ha realizado con exito';
   echo 
'<br><a href="index.php">Login</a>';
   
}else{
 
// el código ingresado no concuerda
 
echo 'El código ingresado no concuerda, revise su correo e inténtelo denuevo';
 echo 
'<br><a href="index.php">Volver a loguearse</a>';             
 
}
?>
  #2 (permalink)  
Antiguo 21/08/2010, 21:15
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años, 7 meses
Puntos: 461
Respuesta: borrar campo o editarlo

depura la consulta a ver si te muestra algun error ej
Código PHP:
 mysql_query($sql,$link) or die (mysql_error()); 
a ver si te muestra algun error suerte
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #3 (permalink)  
Antiguo 21/08/2010, 22:55
Avatar de camsworksinc  
Fecha de Ingreso: julio-2008
Ubicación: Queretaro
Mensajes: 261
Antigüedad: 16 años, 4 meses
Puntos: 11
Respuesta: borrar campo o editarlo

intenta con la siguiente linea modificada sin algunas de las comillas:
Código PHP:
Ver original
  1. $sql="UPDATE basedatos.registro SET confirmacion = '' WHERE registro.nombre = '".$var2."'  LIMIT 1";
__________________
¡Malditas computadoras que siempre hacen lo que les DIGO que hagan, no lo que QUIERO que hagan!
  #4 (permalink)  
Antiguo 22/08/2010, 04:43
 
Fecha de Ingreso: enero-2006
Mensajes: 76
Antigüedad: 18 años, 10 meses
Puntos: 1
Respuesta: borrar campo o editarlo

a veces lo mas simple es la solucion mas eficaz, jeje.

muchas gracias, el problema era la sintaxis, o las comillas.

probe los dos códigos y en el primero ya me salia el mensaje que no reconocia la columna de la variable.

después copié el código de camsworksinc y me funciona a la primera.

gracias a los dos. problema resuelto.

Etiquetas: borrar, campos
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 13:00.