PHP динамическое изображение загружается дважды в Chrome? - PullRequest
1 голос
/ 20 февраля 2011

У меня есть файл PHP, который генерирует динамический контент изображения (Captcha Image)

Изображение необходимо загрузить и перезагрузить на клиенте.

Вот главная страница (test.html)):

<html>
<head>
<title>test</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
<script>
function reload_image(){
    $('#img').attr('src','img.php?'+Math.random());
}
</script>
</head>
<body>
</body>
<img id="img" /><a href="javascript:reload_image();">Reload</a>
</html>

и PHP-файл (img.php):

<?php
header("Content-type: image/jpeg");
readfile('php.png');

Каждый раз, когда я нажимаю на ссылку «Перезагрузить», в журнале доступа Apache есть два журнала., но только один в сетевом мониторе Chrome, вот журнал:

127.0.0.1 - - [20/Feb/2011:15:38:59 +0800] "GET /img.php?0.8672932190820575 HTTP/1.1" 200 249
127.0.0.1 - - [20/Feb/2011:15:38:59 +0800] "GET /img.php?0.8672932190820575 HTTP/1.1" 200 249
127.0.0.1 - - [20/Feb/2011:15:39:13 +0800] "GET /img.php?0.4399074970278889 HTTP/1.1" 200 249
127.0.0.1 - - [20/Feb/2011:15:39:14 +0800] "GET /img.php?0.4399074970278889 HTTP/1.1" 200 249

Эти сценарии отлично работают в Firefox, это ошибка Chrome?Как я могу это исправить?

Большое спасибо!

РЕДАКТИРОВАТЬ


Кажется, проблема неправильной структуры HTML, я'VE поместил содержимое за пределы <body>, если я добавлю его, в Chrome такой ошибки не будет.

Я также обновил свою программу, удалил объявление DTD, после этого такая ошибка исчезлаа также.

ТАК Я думаю, что я не должен использовать строгий DTD, потому что иногда это трудно понять :(

...