Hola,
Sobre la consulta, si la comparacion es de un texto, te flata las comillas, '%$dates%'. Esto supongo que te estaria causando un error de MySQL que podrias haber detectado haciendo:
Código PHP:
$resulttr= mysql_query($query) or die("Error en $query<br>MySQL dice: ".mysql_error());
Luego el if no mira si te devuelve registros o no, sino que comprueba si la consulta genero errores o no. Si quieres saber los registros que devolvio usa la funcion mysql_num_rows() (
www.php.net/mysql_num_rows).
Tambien decirte que tal como tienes el bucle, $datedate2 siempre tendra el mismo valor en todos los ciclos. Siempre es $date[0]-1, y como no acmbia el valor de $date, siempre vale lo mismo.
Saludos.