Problems with javascript location.href

J

Jure Erznoznik

Hi guys,

i have a really stupid problem with this line of code:
location.href = "showreport.php?id=" + sText;

sText is an id of a job that's running on the server.

Showreport.php retrieves the job and outputs the result in HTML. At the same
time job is removed from the server.

What happens is that some browsers (IE 6 mostly) like to GET the
showreport.php TWICE. Of course the second time there is no job any more and
the result returned is of zero length, which is very unpleasant ;-)

Headers sent by the browsers are (1st call):
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg,
application/x-shockwave-flash, */*
Accept-Language: sl
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR
1.1.4322)
Host: veliswork
Connection: Keep-Alive
Cookie: PHPSESSID=tsghl22ijg4f6ba7a2mthggun6

Headers sent by the browsers are (2nd call):
Accept: */*
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR
1.1.4322)
Host: veliswork
Connection: Keep-Alive
Cookie: PHPSESSID=tsghl22ijg4f6ba7a2mthggun6

Note the Accept tag.
What's even more interesting, the accept tag of IE 6.0 that does not request
twice is:
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg,
application/x-shockwave-flash, application/vnd.ms-excel,
application/vnd.ms-powerpoint, application/msword, */*

Note the (still) absent application/pdf, which is the target content here.

Can somebody explain to me, why two calls and if that can be prevented. I
can reduce the problem by keeping the job for another minute or so, but
these jobs tend to be rather large (>10MB RAM usage) when large reports are
generated.

Thanks,
Jure
 
N

nikki

Jure said:
Hi guys,

i have a really stupid problem with this line of code:
location.href = "showreport.php?id=" + sText;

What calls that?
A link?
If you're using a link href/onclick combo, you need to return false so
the href isn't followed.

Can somebody explain to me, why two calls and if that can be prevented.

Why doesn't the PHP that does the work check for valid ID?
It really should. Good coding practice, less errors, and less chance of
injection attacks or the like.
 
J

Jure Erznoznik

nikki said:
What calls that?
A link?
If you're using a link href/onclick combo, you need to return false so
the href isn't followed.


Why doesn't the PHP that does the work check for valid ID?
It really should. Good coding practice, less errors, and less chance of
injection attacks or the like.

PHP does check for valid ID. That's why the second result is zero length.

Jure
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,995
Messages
2,570,225
Members
46,815
Latest member
treekmostly22

Latest Threads

Top