Paso a plantear mi problema:
Recupero valores de un formulario, y los convierto en variables:
$c2
$p2
$c3
$p3
$c4
$p4
etc.
algunos de esos campos pueden NO haber sido ingresados por el usuario (lo cual es válido porque no son campos obligatorios en el formulario). Los campos en el formulario son numericos.
Lo que pretendo es que, si los campos NO fueron ingresados por el usuario, sus valores se guarden en la BBDD como NULL, pero no consigo hacerlo. Pongo a continuacion el codigo usado (incluyendo una funcion)
Código PHP:
function nullSiNecesario ($variable) {
if ($variable === 0 or $variable === "0" or $variable === "" or $variable === " " or $variable === NULL)
{ $resultado = NULL; }
else { $resultado = $variable; }
return $resultado;
}
// convertimos los valores a null si fuera necesario...
$c2bd = nullSiNecesario ($c2);
$c3bd = nullSiNecesario ($c3);
$c4bd = nullSiNecesario ($c4);
$p2bd = nullSiNecesario ($p2);
$p3bd = nullSiNecesario ($p3);
$p4bd = nullSiNecesario ($p4);
//creamos una conexion
$conexion=mysql_connect($Host,$User,$Pass)
or die("Problemas en la conexion");
//nos conectamos a la BBDD usando la variable $conexion
mysql_select_db($BaseDatos,$conexion) or
die("Problemas en la seleccion de la base de datos");
// insertamos los valores
mysql_query("INSERT INTO $Tabla3 (
`c2`, `p2`,
`c3`, `p3`,
`c4`, `p4`)
VALUES (
'$c2bd', '$p2bd',
'$c3bd', '$p3bd',
'$c4bd', '$p4bd',)", $conexion)
or die("Problemas en el insert".mysql_error());
mysql_close($conexion); // cierra la conexion a la BBDD
// No me marca error, pero al revisar la tabla, los campos NO ingresados por el usuario tienen valor 0 en lugar de tener NULL
Alguna idea de donde está mi error de lógica???
de antemano buen karma para ti que liste mi mensaje.