Cita:
Iniciado por Triby
Una solucion (?):
Código PHP:
Ver original
// Cuando coloque dato en tu query:
$query = "INSERT INTO tabla (dato) VALUES ($dato)";
Si dato no existia, contendra la cadena
NULL (sin comillas), que para MySQL sera valor nulo, pero si dato contiene algun valor, entonces sera
'valor de dato'... correctamente escapado e incluye las comillas simples, para evitar errores.
Hola, compañero. hice lo que me dijo y funciona, cuando dejo un campo de los posibles nulos en blanco en el formulario, se guarda null, pero los que lleno, tambien posibles nulos, no se guardan, queda como cadenas vacias. por favor ayudeme con mi codigo, ya que esto me esta tomando mucho tiempo.
Código PHP:
$direccion = (empty($_POST['direccion'])) ? 'NULL' : "'" . mysql_real_escape_string($_POST['direccion']) . "'";
$telefono = (empty($_POST['telefono'])) ? 'NULL' : "'" . mysql_real_escape_string($_POST['telefono']) . "'";
$actividad = (empty($_POST['actividad'])) ? 'NULL' : "'" . mysql_real_escape_string($_POST['actividad']) . "'";
$prevision = (empty($_POST['prevision'])) ? 'NULL' : "'" . mysql_real_escape_string($_POST['prevision']) . "'";
$estado_civil = (empty($_POST['estado_civil'])) ? 'NULL' : "'" . mysql_real_escape_string($_POST['estado_civil']) . "'";
require("conexion.php");
conectar();
$insert = "INSERT INTO pacientes (rut_pac,nombre,ape1,ape2,fecha_nacimiento,direccion,telefono,actividad,prevision,estado_civil)
VALUES ('$rut_pac','$nombre','$ape1','$ape2','$fecha_nacimiento',$direccion,$telefono,$actividad,$prevision,$estado_civil)";