Your problem may be because month condition is checked before the week checking. so please change the order of your condition checking...
try this...
<?
if($GET['id'] == 'dailyblog' && $GET['year'] == '2004')
{ include("blog/2004.php"); }
// weeks //
elseif($GET['id'] == 'dailyblog' && $GET['archive'] == 'july' && $_GET['week'] == '2')
{ include("blog/july/4_10.php"); }
elseif($GET['id'] == 'dailyblog' && $GET['archive'] == 'july' && $_GET['week'] == '3')
{ include("blog/july/11_17.php"); }
elseif($GET['id'] == 'dailyblog' && $GET['archive'] == 'july' && $_GET['week'] == '4')
{ include("blog/july/18_24.php"); }
elseif($GET['id'] == 'dailyblog' && $GET['archive'] == 'july' && $_GET['week'] == '5')
{ include("blog/july/25-31.php"); }
// months //
if($GET['id'] == 'dailyblog' && $GET['year'] == '2004')
{ include("blog/2004.php"); }
elseif($GET['id'] == 'dailyblog' && $GET['archive'] == 'july')
{ include("blog/july.php"); }
elseif($GET['id'] == 'dailyblog' && $GET['archive'] == 'august')
{ include("blog/august.php"); }
// default //
else { include("blog/home.php"); }
?>