потому, что...
name.swf и name.swf?9998
это
ссылка на один и тотже фаил.
То, что находится после ? в данном случае не имеет никакого значения.
Подобная запись используется для передачи каких-либо переменных скриптам и т.п.
По большому счету, после ? можно писать какую угодно хрень и она будет являться либо параметром, передающимся этому файлу, либо просто ХРЕНЬЮ.
