La variable $sdate nunca está vacía, pues tiene los guiones al menos.
Podrias hacer esto:
Código PHP:
<?php
//compruebo que las variables vengan desde la url
if (isset($_GET['year']) && isset($_GET['mes']) && isset($_GET['dia']))
{
//compruebo que la fecha a formar sea válida
if(checkdate($_GET['mes'],$_GET['dia'],$_GET['year']))
{
$sdate = $_GET['year']."-".$_GET['mes']."-".$_GET['dia'];
}
else
{
echo "La fecha ingresada no es válida";
}
}
else
{
//si no se reciben los valores uso la fecha actual
$sdate = date("Y-m-d");
}
?>