Pues esta vez tengo el siguiente problema:
Tengo un formulario:
Código HTML:
Ver original
<script language="javascript" type="text/javascript"> function d1(selectTag){ if(selectTag.value == 'normal'){ document.getElementById('horas').disabled = false; document.getElementById('minutos').disabled = false; }else{ document.getElementById('horas').disabled = true; document.getElementById('minutos').disabled = true; } if(selectTag.value == 'multimedia'){ document.getElementById('diafin').disabled = false; document.getElementById('mesfin').disabled = false; document.getElementById('aniofin').disabled = false; }else{ document.getElementById('diafin').disabled = true; document.getElementById('mesfin').disabled = true; document.getElementById('aniofin').disabled = true; } } </script> <form action="..." method="post" OnSubmit="return valida(this)"> <option SELECTED value="">Selecciona una categoría <option value="normal">Evento Programado o espontáneo <option value="multimedia">Evento Multimedia <br> <br> <br> dias~ meses~ <br> dias~ meses~ <br> <br> <br> </form>
Lo que hace básicamente es activar los campos horas y minutos si se selecciona el value normal como categoria. Si se selecciona multimedia activa los campos diafin, mesfin, aniofin. De esa forma, los eventos de categoria normal cuentan con una hora fijada (sin fecha de finalización), y los multimedia con una fecha de finalización (sin hora).
Pues bien, al seleccionar multimedia y enviar el formulario los datos se ingresan perfectamente. Pero al elegir normal (es decir, ingresar una hora) me sale el siguiente error:
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 ' '-', , '-', )),'normal')' at line 1
realizo la sintaxis de la siguiente manera:
Código PHP:
Ver original
$query = "INSERT INTO eventos (nombre,link,fecha,horas,minutos,organizador,fecha_fin,categoria) values ('{$_POST['nombre']}','{$_POST['link']}',DATE(CONCAT({$_POST['anio']}, '-', {$_POST['mes']}, '-', {$_POST['dia']})),'{$_POST['horas']}','{$_POST['minutos']}','{$_POST['organizador']}',DATE(CONCAT({$_POST['aniofin']}, '-', {$_POST['mesfin']}, '-', {$_POST['diafin']})),'{$_POST['categoria']}')";
Espero su ayuda, gracias desde ya.