Foros del Web » Programando para Internet » PHP »

Poner una variable a nulo...

Estas en el tema de Poner una variable a nulo... en el foro de PHP en Foros del Web. Hola! Supongo que esto que voy a preguntar es una chorrada y me da hasta vergüenza pero no he encontrado nada similar en todo el ...
  #1 (permalink)  
Antiguo 15/11/2004, 19:12
 
Fecha de Ingreso: octubre-2004
Ubicación: Cork (Irlanda)
Mensajes: 161
Antigüedad: 13 años, 1 mes
Puntos: 1
Poner una variable a nulo...

Hola! Supongo que esto que voy a preguntar es una chorrada y me da hasta vergüenza pero no he encontrado nada similar en todo el foro...

Mediante un formulario introduzco unos valores para introducirlos después en una tabla de una base de datos... como en esa tabla hay campos que pueden tener valor nulo el usuario puede dejarlo en blanco...

Ahora bien... lo que no consigo es que en la base de datos se inserte el valor NULL, sino que se inserta un 0 (si la variable es de tipo numérico) o la cadena vacía "" (si es de tipo cadena)...

Hago lo siguiente:


Código:
$apellido = $_POST['apellido'];
if (empty($apellido)) $apellido = NULL;
He probado con y sin la última linea y no consigo nada... alguien puede echarme una manita?

Gracias.
  #2 (permalink)  
Antiguo 15/11/2004, 20:37
Avatar de stock  
Fecha de Ingreso: junio-2004
Ubicación: Monterrey NL
Mensajes: 2.390
Antigüedad: 13 años, 5 meses
Puntos: 53
bueno, el significado de NULL es en realidad NADA, osea si es una variable de tipo String, pues con la instruccion if (empty($apellido)) $apellido = NULL; le estas diciendo al compilador, "si no tiene nada, pues ponle nada", osea, no tiene mucho sentido.

Ahora, si quieres que inserte en tu Base de datos una variable NULL, pues lo esta haciendo, inserta NADA osea "", si quieres que te aparescan las letras N-U-L-L, pues vastaria con poner

if (empty($apellido)) $apellido = "NULL";

saludos

Última edición por stock; 15/11/2004 a las 20:38
  #3 (permalink)  
Antiguo 16/11/2004, 05:22
 
Fecha de Ingreso: octubre-2004
Ubicación: Cork (Irlanda)
Mensajes: 161
Antigüedad: 13 años, 1 mes
Puntos: 1
Me temo que no estas en lo cierto... en una tabla con un campo en el que no se permite tener valores duplicados no se puede poner dos 0, en cambio si se puede poner dos NULL.
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 15:43.