Hey how is everybody doing today?
I am a noob in php (i actually just wrote my first php script yesterday) but I am running into a problem. I have a .php file and when I go to it on firefox it tries to either open with a program or save (it is acting like it is a downloadable file or something). IE opens the page fine though, it is a little weird because the whole time I have had problems with IE but not FF. I dont know whether this should be in browser or php so ill just post in both! :)
thank you for your help!!

http://arbortreeland.com/index2.php

when I go to it in firefox it tries to download the file (you know like if you click on a direct link to an .mp3 file or something it prompts you to open or save).
If I choose to open it in firefox it just opens a blank page and prompts to dl again.
BUT if I use IE it works fine. this does this on all the computers I tried it on so it is not system specific.

I tested it with firefox on my linux box and it prompts for the open or save option.

How peculiar. Are you using firefox 2.0 out of interest?

i could paste the code here, but I dont know if you guys would want to debug it for me. Just in case though. NOTE: I dont actually have any php in there, just javascript. I also removed the body content. It works fine if i save it as .html, but it wont preload the images unless it has a .php extension.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript">
// configure here:
var preload = new Array('atlpics/coral6.jpg', 'atlpics/coral7.jpg', 'atlpics/coral8.jpg' ,'atlpics/coral23.jpg' ,'coral39.jpg' ,'atlpics/coral73.jpg' ,'atlpics/coral97.jpg' ,'atlpics/csid2.jpg' ,'atlpics/csid3.jpg' ,'atlpics/csid4.jpg' ,'atlpics/disaster.jpg' ,'atlpics/disaster2.jpg' ,'atlpics/hitw2.jpg' ,'atlpics/jsima.jpg' ,'atlpics/jsima2.jpg' ,'atlpics/npbcsid.jpg' ,'atlpics/npbcid2.jpg' ,'atlpics/npbcid3.jpg' ,'atlpics/swfmd.jpg' ,'atlpics/swfmd2.jpg' ,'atlpics/swfmd3.jpg');

var loader = new Array();
for(var i = 0; i < preload.length; i++){
   loader[i] = new Image();
   loader[i].src = preload[i];
}
</script>




<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>ATL Disaster Recovery</title>
<script language="javascript">AC_FL_RunContent = 0;</script>
<script src="AC_RunActiveContent.js" language="javascript"></script>
</head>
<body>
</body>
</html>

When you send a HTTP Request to the URL, you get the HTTP Response Headers:

HTTP/1.1 200 OK
Server: Microsoft-IIS/5.0
X-Powered-By: ASP.NET
Date: Sat, 30 Jun 2007 14:28:56 GMT
Content-Type: application/octet-stream
Accept-Ranges: bytes
Last-Modified: Fri, 29 Jun 2007 12:53:49 GMT
ETag: "1077a4894cbac71:3202"
Content-Length: 7111

Notice:

Content-Type: application/octet-stream
Accept-Ranges: bytes

It does not look like your server is not sending out the correct response headers. Its treats the PHP files as a download.

Is PHP even set up on the server? Have you tried other PHP scripts successfully?

guyz..i juz dont wanna create another thread.. bt, juz wanna say.. m searching for a php scripter/develoter to get help with or hav instant chat .. m interestied in scripting..(learning)

thank you so much for helping me paksender....

digital ether: That could quite possible be it.. I was on a windows server and I just switched it to unix but I dont know if it is completely switched right now. But the thing is it works on Internet Explorer so it is confusing.
and what do you mean set up php on the server... I am paying a hosting site and they should do that right? if IE works it should be fine though.....

you know wot.. itz anoying.. m also using firefox.. sometimes it happens like that.. the php files comes up like a downloading file.. i mean.. from some sites.. it may b juz may not b only happening on firefox.. bt, the one you juz showed.. aaah.. itz so confusing. .. wots wrong here..?

thank you so much for helping me paksender....

digital ether: That could quite possible be it.. I was on a windows server and I just switched it to unix but I dont know if it is completely switched right now.

The domain is still resolving to an IIS server. Did you change the DNS entries for your domain to point to the new server?
I just tested right now and I still get a response from an IIS server.

HTTP Request:

GET /index2.php HTTP/1.0
HOST: arbortreeland.com

HTTP Response:

HTTP/1.1 200 OK
Server: Microsoft-IIS/5.0
X-Powered-By: ASP.NET
Date: Sun, 01 Jul 2007 09:51:43 GMT
Content-Type: application/octet-stream
Accept-Ranges: bytes
Last-Modified: Fri, 29 Jun 2007 12:53:49 GMT
ETag: "1077a4894cbac71:3202"
Content-Length: 7111

I think the problem is that you believe you're testing the page on the new host, but in fact the domain still resolves to the old host.

A whois shows:

NS7.WORLDNIC.COM      	 205.178.190.4   	 
 NS8.WORLDNIC.COM    	205.178.189.4

as the DNS.

Sometimes it takes a day or two for DNS entries to propagate through the differnet DNS servers around the globe.

and what do you mean set up php on the server... I am paying a hosting site and they should do that right?

I mean: Is PHP installed on the machine running the IIS server?
The particular page is being handled by ASP.NET and not PHP.

You can see it in this response header:

X-Powered-By: ASP.NET

If it was handled by PHP it would be something like:

X-Powered-By: PHP/{php version}

To make sure the page is being handled by PHP try a php page with the following:

<?php 
phpinfo();
?>

This still doesn't mean PHP isn't intalled however, it just means the server hasn't been set up to handle .php extensions with the PHP module or CGI.

But the thing is it works on Internet Explorer so it is confusing.
....
if IE works it should be fine though.....

No, the page working on IE does not mean anything. It only means that IE does not respect the Content-Type HTTP Header. Firefox actually follows the HTTP standard and treats the HTTP resource as a download instead of assuming its a PHP page just because it has a .php extension.

You have to place some PHP code into the page, and see if the PHP is parsed. Use the phpinfo() test above.

aha!!! yeah I switched it to the unix server and it works!!!! :)
thank you

This question has already been answered. Start a new discussion instead.