CGI script parameter error.

M

Mike Duffy

I am having a little problem with my ISP's counter script. The script
works perfectly with:

Internet Explorer 8, FireFox 3.6.11, Opera 10.63, and Chrome 7.0.

However, with Safari 5.0.2 and Konqueror 4.4.4 it does not.


Here is the url of the script itself:

http://pages.videotron.com/cgi-bin/Count.cgi?
display=counter|df=vldowtzc.dat|incr=0|dd=B|md=7|ft=5|frgb=FFFF00

This CGI script is served in the form of a GIF image. With the
various parameters specified in the query section, (i.e. the "dd=.."
and "md=..." arguments) it should show up as a 7-digit odometer-style
number with a value of 507 all within a yellow border.

First, I do not understand why the url alone by itself does not work
directly as the target for a web browser. This happens for ALL 6
browsers. If you use the url above, instead of the proper image, you
will see instead a 6 digit green seven-segment number of value
"888888" (90x20 px). This indicates that the input parameters (df,
incr, dd, ft, frgb) are not received okay by the server, but the GIF
image that is generated *is* received okay by the browser. (You will
get a similar display if you put improper parameter values in the
url.)


But the real problem is that when you make a reference to the url
within a web page (i.e. as you are supposed to), it does not work
with Safari & Konqueror. I have created a minimal page which accesses
the script:

http://pages.videotron.com/duffym/test.htm


For your info, here is the source of the page on the line above:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html lang="en"><head>
<Meta Http-Equiv="Content-Type" Content="text/html; charset=UTF-
8">
<Meta Http-Equiv="Content-Language" Content="en-US">
<Meta Http-Equiv="Pragma" Content="no-cache">
<Meta Http-Equiv="Cache-Control" Content="no-cache">
<title>Test</title></head>
<body><p>
<img src=
"http://pages.videotron.com/cgi-bin/Count.cgi?
display=counter|df=vldowtzc.dat|incr=0|dd=B|md=7|ft=5|frgb=ffff00">
</p></body></html>

With IE, FF, Opera & Chrome, you correctly see "0000507" in a yellow
rectangle. With Safari & Konqueror, you see the same style as when
the url is given alone as a web address (green seven-segment on
black), but the numerical value is apparently a random number instead
of "888888".

Does anyone have any clues for me? According to the documentation for
the script, a random value is displayed whenever the "df" parameter
is not present or incorrect. In any case, the style that you see is
what you would expect if none of the parameters were passed.
 
D

dorayme

Mike Duffy said:
http://pages.videotron.com/duffym/test.htm



With IE, FF, Opera & Chrome, you correctly see "0000507" in a yellow
rectangle. With Safari & Konqueror, you see the same style as when
the url is given alone as a web address (green seven-segment on
black), but the numerical value is apparently a random number instead
of "888888".

In my Safari 3.1.2, I get only the question mark gif for when the
image is unavailable (there is no alt provided, if it was, I
might get the alt text)
 
P

Peter

I am having a little problem with my ISP's counter script. The script
works perfectly with:

Internet Explorer 8, FireFox 3.6.11, Opera 10.63, and Chrome 7.0.

However, with Safari 5.0.2 and Konqueror 4.4.4 it does not.


Here is the url of the script itself:

http://pages.videotron.com/cgi-bin/Count.cgi?
display=counter|df=vldowtzc.dat|incr=0|dd=B|md=7|ft=5|frgb=FFFF00

This CGI script is served in the form of a GIF image. With the
various parameters specified in the query section, (i.e. the "dd=.."
and "md=..." arguments) it should show up as a 7-digit odometer-style
number with a value of 507 all within a yellow border.

First, I do not understand why the url alone by itself does not work
directly as the target for a web browser. This happens for ALL 6
browsers. If you use the url above, instead of the proper image, you
will see instead a 6 digit green seven-segment number of value
"888888" (90x20 px). This indicates that the input parameters (df,
incr, dd, ft, frgb) are not received okay by the server, but the GIF
image that is generated *is* received okay by the browser. (You will
get a similar display if you put improper parameter values in the
url.)


But the real problem is that when you make a reference to the url
within a web page (i.e. as you are supposed to), it does not work
with Safari & Konqueror. I have created a minimal page which accesses
the script:

http://pages.videotron.com/duffym/test.htm


For your info, here is the source of the page on the line above:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html lang="en"><head>
<Meta Http-Equiv="Content-Type" Content="text/html; charset=UTF-
8">
<Meta Http-Equiv="Content-Language" Content="en-US">
<Meta Http-Equiv="Pragma" Content="no-cache">
<Meta Http-Equiv="Cache-Control" Content="no-cache">
<title>Test</title></head>
<body><p>
<img src=
"http://pages.videotron.com/cgi-bin/Count.cgi?
display=counter|df=vldowtzc.dat|incr=0|dd=B|md=7|ft=5|frgb=ffff00">
</p></body></html>

With IE, FF, Opera & Chrome, you correctly see "0000507" in a yellow
rectangle. With Safari & Konqueror, you see the same style as when
the url is given alone as a web address (green seven-segment on
black), but the numerical value is apparently a random number instead
of "888888".

Does anyone have any clues for me? According to the documentation for
the script, a random value is displayed whenever the "df" parameter
is not present or incorrect. In any case, the style that you see is
what you would expect if none of the parameters were passed.

Without knowing how the script processes those parameters it's hard to
tell. I did have a situation once where I was passing data from one page
to another and then reading the data using php. However, my script just
read the data in what I thought was the order in which it was being
passed and this caused it not to work in some browsers. What I hadn't
allowed for was that the data was passed in a different order depending
on the browser being used.

Obviously, if your script is 'GETTING' the data by variable name then
this shouldn't be a problem.
 
M

Mike Duffy

I am having a little problem with my ISP's counter script. The
script works perfectly with:

Internet Explorer 8, FireFox 3.6.11, Opera 10.63, and Chrome 7.0.

However, with Safari 5.0.2 and Konqueror 4.4.4 it does not.


Here is the url of the script itself:

http://pages.videotron.com/cgi-bin/Count.cgi?
display=counter|df=vldowtzc.dat|incr=0|dd=B|md=7|ft=5|frgb=FFFF00

This CGI script is served in the form of a GIF image. With the
various parameters specified in the query section, (i.e. the
"dd=.." and "md=..." arguments) it should show up as a 7-digit
odometer-style number with a value of 507 all within a yellow
border.

First, I do not understand why the url alone by itself does not
work directly as the target for a web browser. This happens for
ALL 6 browsers. If you use the url above, instead of the proper
image, you will see instead a 6 digit green seven-segment number
of value "888888" (90x20 px). This indicates that the input
parameters (df, incr, dd, ft, frgb) are not received okay by the
server, but the GIF image that is generated *is* received okay by
the browser. (You will get a similar display if you put improper
parameter values in the url.)


But the real problem is that when you make a reference to the url
within a web page (i.e. as you are supposed to), it does not work
with Safari & Konqueror. I have created a minimal page which
accesses the script:

http://pages.videotron.com/duffym/test.htm


For your info, here is the source of the page on the line above:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html lang="en"><head>
<Meta Http-Equiv="Content-Type" Content="text/html;
charset=UTF- 8">
<Meta Http-Equiv="Content-Language" Content="en-US">
<Meta Http-Equiv="Pragma" Content="no-cache">
<Meta Http-Equiv="Cache-Control" Content="no-cache">
<title>Test</title></head>
<body><p>
<img src=
"http://pages.videotron.com/cgi-bin/Count.cgi?
display=counter|df=vldowtzc.dat|incr=0|dd=B|md=7|ft=5|frgb=ffff00">
</p></body></html>

With IE, FF, Opera & Chrome, you correctly see "0000507" in a
yellow rectangle. With Safari & Konqueror, you see the same style
as when the url is given alone as a web address (green
seven-segment on black), but the numerical value is apparently a
random number instead of "888888".

Does anyone have any clues for me? According to the documentation
for the script, a random value is displayed whenever the "df"
parameter is not present or incorrect. In any case, the style that
you see is what you would expect if none of the parameters were
passed.

FWIW I played around with the syntax and eventually discovered that the
CGI script in question accepts "|" or "&" as equivalent, and everything
works fine on all 6 browsers if you use "&".

Well, not EVERYTHING. A url consisting solely of the http reference to
the CGI script does not work, but I do not care about that. Most
likely, this is due to a MIME mis-attribution. (Because it is in GIF
format despite the fact that there is no file extension.)

But it does work okay if the http reference to the CGI is within
another web page, which is what I want anyways.
 

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

No members online now.

Forum statistics

Threads
473,982
Messages
2,570,189
Members
46,735
Latest member
HikmatRamazanov

Latest Threads

Top