Lo primero que tendrias que hacer es validar la fecha, incluso en el lado cliente.... pero si llega una fecha valida luego no te compliques
Código PHP:
Ver original$dob_disp1=$y."-".$m."-".$d;
$sql="SELECT * FROM `noticias` WHERE `fecha`='".$dob_disp1."'";
Recuerda el formato y los delimitadores para los campos DATE y DATETIME
'YYYY-mm-dd' o 'YYYY-mm-dd HH:MM:SS'
no es valido 'YY-m-d' u otras variantes
WHERE `fecha`=
'".$dob_disp1."
'";
Para construir la query necesitas un string bien formateado aun que el campo sea DATE. Genralmente cuando aparece 01-01-1970 es que no esta entrando una fecha valida.