Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Error al cambiar un correo

Estas en el tema de Error al cambiar un correo en el foro de PHP en Foros del Web. Hola mi pregunta es esta: Al momento de modificar un campo tipo mail, me manda un error por el símbolo del arroba, les dejo el ...
  #1 (permalink)  
Antiguo 28/02/2014, 12:59
Avatar de Landa11  
Fecha de Ingreso: febrero-2014
Ubicación: En algún lugar de mi oficina
Mensajes: 148
Antigüedad: 10 años, 9 meses
Puntos: 1
Pregunta Error al cambiar un correo

Hola mi pregunta es esta:

Al momento de modificar un campo tipo mail, me manda un error por el símbolo del arroba, les dejo el error

Variable sql: UPDATE datos SET user='administrador', pass=pass, [email protected] WHERE iduser=2

( ! ) Notice: Array to string conversion in C:\ejecuta.php on line 32
Call Stack
# Time Memory Function Location
1 0.0000 153912 {main}( ) ..\ejecuta.php:0

ERROR AL EJECUTAR LA CONSULTA Array:You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '@loc.com WHERE iduser=2' at line 4


Alguien sabe a que se debe este error y cómo lo puedo solucionar?

Gracias por sus comentarios y sugerencias.
  #2 (permalink)  
Antiguo 28/02/2014, 13:10
Avatar de jamie_88  
Fecha de Ingreso: abril-2011
Ubicación: Lima
Mensajes: 161
Antigüedad: 13 años, 6 meses
Puntos: 28
Respuesta: Error al cambiar un correo

tu consulta es exactamente así? falta ' antes y después del correo
  #3 (permalink)  
Antiguo 28/02/2014, 13:13
Avatar de Landa11  
Fecha de Ingreso: febrero-2014
Ubicación: En algún lugar de mi oficina
Mensajes: 148
Antigüedad: 10 años, 9 meses
Puntos: 1
Respuesta: Error al cambiar un correo

jamie_88 mira así es como lo tengo en mi código para poder hacer la modificación:

Código PHP:
Ver original
  1. switch($opcion)
  2. {
  3. case 'modifica':$sql="UPDATE datos SET
  4.                           user='".$_POST['user'][$indice]."',
  5.                           pass=".$_POST['pass'][$indice].",
  6.                           mail=".$_POST['mail'][$indice]."
  7.                           WHERE iduser=".$_POST['iduser'][$indice];break;
  8.     case 'elimina':$sql="DELETE FROM datos WHERE iduser=".$_POST['iduser'][$indice];break;
  9.     default: echo "<center>NO HAY NADA SELECCIONADO</center>"; break;

al principio me mandaba un error en una columna de nombre pues utilizo unas cajas de texto para poder modificar los datos.
  #4 (permalink)  
Antiguo 28/02/2014, 13:22
Avatar de jamie_88  
Fecha de Ingreso: abril-2011
Ubicación: Lima
Mensajes: 161
Antigüedad: 13 años, 6 meses
Puntos: 28
Respuesta: Error al cambiar un correo

Código PHP:
pass=".$_POST['pass'][$indice]."//tus claves son numericas?
mail='{$_POST['mail'][$indice]}' 
  #5 (permalink)  
Antiguo 28/02/2014, 13:28
Avatar de Landa11  
Fecha de Ingreso: febrero-2014
Ubicación: En algún lugar de mi oficina
Mensajes: 148
Antigüedad: 10 años, 9 meses
Puntos: 1
Respuesta: Error al cambiar un correo

No, no son numéricas. Necesitas alguna información del otro código donde hago el INSERT para crear un usuario?

La verdad ando algo perdido en este tema de PHP pues ando creando una BD con usuarios en PHPMYADMIN y falta validar el mail en el registro y en el modificado, así como validar la contraseña pues sólo le pongo sha1 para poder poner una seguridad en el.
  #6 (permalink)  
Antiguo 28/02/2014, 13:30
Avatar de Landa11  
Fecha de Ingreso: febrero-2014
Ubicación: En algún lugar de mi oficina
Mensajes: 148
Antigüedad: 10 años, 9 meses
Puntos: 1
Respuesta: Error al cambiar un correo

Dato: si no le pongo el símbolo @ me deja guardar los datos sin problemas
  #7 (permalink)  
Antiguo 28/02/2014, 13:36
Avatar de xpapachox  
Fecha de Ingreso: junio-2011
Mensajes: 77
Antigüedad: 13 años, 5 meses
Puntos: 12
Respuesta: Error al cambiar un correo

Las comillas para el cierre de MAIL.
Código PHP:
switch($opcion)
{
case 
'modifica':$sql="UPDATE datos SET 
                          user='"
.$_POST['user'][$indice]."',
                          pass='"
.$_POST['pass'][$indice]."',
                          mail='"
.$_POST['mail'][$indice]."' 
                          WHERE iduser="
.$_POST['iduser'][$indice];break;
    case 
'elimina':$sql="DELETE FROM datos WHERE iduser=".$_POST['iduser'][$indice];break;
    default: echo 
"<center>NO HAY NADA SELECCIONADO</center>"; break;

  #8 (permalink)  
Antiguo 28/02/2014, 13:39
Avatar de Landa11  
Fecha de Ingreso: febrero-2014
Ubicación: En algún lugar de mi oficina
Mensajes: 148
Antigüedad: 10 años, 9 meses
Puntos: 1
Respuesta: Error al cambiar un correo

Así es, de hecho le agregué las comillas a todos los campos, y me dejó hacer el cambio.

Muchas gracias y espero que en mi siguiente pregunta me puedas auxiliar, que gran apoyo!!!!

Etiquetas: dreamweavercs6, phpmyadmin, sql, wamp
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 22:34.