pues la respuesta esta en el condicional como te lo indique pero como indico
gatorv cometi un pequeño error
ya que para que un campo lo tome como null debe de hacerse directamente en la consulta entonces que vas a hacer lo siguiente
Código PHP:
Ver originalif(empty($_FILES['documasociado']['name'])){ $insertSQL = sprintf("INSERT INTO noticias (fecha, fechanac, titulo, detalle, foto, documasociado, nota, ubicacion, categoria) VALUES (%s, %s, %s, %s, 'fotos/{$_FILES['foto']['name']}', NULL,%s, %s, %s)", GetSQLValueString($_POST['fecha'], "date"),
GetSQLValueString($_POST['fechanac'], "date"),
GetSQLValueString($_POST['titulo'], "text"),
GetSQLValueString($_POST['detalles'], "text"),
GetSQLValueString($_POST['nota'], "text"),
GetSQLValueString($_POST['ubicacion'], "text"),
GetSQLValueString($_POST['categoria'], "text"));
}
else{
$insertSQL = sprintf("INSERT INTO noticias (fecha, fechanac, titulo, detalle, foto, documasociado, nota, ubicacion, categoria) VALUES (%s, %s, %s, %s, 'fotos/{$_FILES['foto']['name']}', 'mp3/{$_FILES['documasociado']['name']}',%s, %s, %s)", GetSQLValueString($_POST['fecha'], "date"),
GetSQLValueString($_POST['fechanac'], "date"),
GetSQLValueString($_POST['titulo'], "text"),
GetSQLValueString($_POST['detalles'], "text"),
GetSQLValueString($_POST['nota'], "text"),
GetSQLValueString($_POST['ubicacion'], "text"),
GetSQLValueString($_POST['categoria'], "text"));
}
de tal manera que si llenes la variable $insertSQL con la consulta como lo desees para que luego ejecutes el query si esta vacio esa parte se llena con NULL si esta lleno se llena con lo que trae el $_FILES['documasociado']['name'] espero que te sirva de ayuda