AJAX not working on firefox

Please support our JavaScript / DHTML / AJAX advertiser: PostgreSQL or MySQL? Compare and contrast the two most popular open source databases
Reply

Join Date: Jul 2006
Posts: 67
Reputation: himanjim is an unknown quantity at this point 
Solved Threads: 1
himanjim himanjim is offline Offline
Junior Poster in Training

AJAX not working on firefox

 
0
  #1
May 20th, 2007
Hi...
I'm developing a simple script using AJAX and php to update a database...But the script is running fine on IE but not at all
on Firefox2.0.0.3....Please help me out
Here's my AJAX script

var xmlHttp

function showUser(str)
{
xmlHttp=GetXmlHttpObject()
if (xmlHttp==null)
{
alert ("Browser does not support HTTP Request")
return
}
var url="http://127.0.0.1/testminor/minor.php"
url=url+"?q="+str
url=url+"&sid="+Math.random()
xmlHttp.onreadystatechange=stateChanged
xmlHttp.open("GET",url,true)
xmlHttp.send(null)
}

function stateChanged()
{
if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
{
document.getElementById("txtHint").innerHTML=xmlHttp.responseText
}
}

function GetXmlHttpObject()
{
var xmlHttp=null;
try
{
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}
catch (e)
{
//Internet Explorer
try
{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlHttp;
}
Reply With Quote Quick reply to this message  
Join Date: Jul 2006
Posts: 1,091
Reputation: MattEvans is a jewel in the rough MattEvans is a jewel in the rough MattEvans is a jewel in the rough 
Solved Threads: 63
Moderator
Featured Poster
MattEvans's Avatar
MattEvans MattEvans is offline Offline
Veteran Poster

Re: AJAX not working on firefox

 
0
  #2
May 20th, 2007
Are you getting any specific errors in the firefox error console? I believe FF will reject XMLHTTP connections to pages that aren't on the same domain that the script runs from; I imagine that's amplified by the fact you're trying to connect to 127.0.0.1... Easiest way to get around this is to use relative/server absolute URLS in XMLHTTP opens..

http://developer.mozilla.org/en/docs...etting_Started

Originally Posted by Mozilla
As a security feature, you cannot call pages on 3rd-party domains. Be sure to use the exact domain name on all of your pages or you will get a 'permission denied' error when you call open(). A common pitfall is accessing your site by domain.tld, but attempting to call pages with www.domain.tld.
Plato forgot the nullahedron..
Reply With Quote Quick reply to this message  
Join Date: Jul 2006
Posts: 67
Reputation: himanjim is an unknown quantity at this point 
Solved Threads: 1
himanjim himanjim is offline Offline
Junior Poster in Training

Re: AJAX not working on firefox

 
0
  #3
May 20th, 2007
Thanks for ur reply...
I tried that + the link you gave me....But still IE accepts it and firefox don't.......
Reply With Quote Quick reply to this message  
Join Date: Jul 2006
Posts: 1,091
Reputation: MattEvans is a jewel in the rough MattEvans is a jewel in the rough MattEvans is a jewel in the rough 
Solved Threads: 63
Moderator
Featured Poster
MattEvans's Avatar
MattEvans MattEvans is offline Offline
Veteran Poster

Re: AJAX not working on firefox

 
0
  #4
May 20th, 2007
Originally Posted by MattEvans
Are you getting any specific errors in the firefox error console?
^ it would be helpful to list any errors you may, or may not, be recieving
Plato forgot the nullahedron..
Reply With Quote Quick reply to this message  
Join Date: Jul 2006
Posts: 67
Reputation: himanjim is an unknown quantity at this point 
Solved Threads: 1
himanjim himanjim is offline Offline
Junior Poster in Training

Re: AJAX not working on firefox

 
0
  #5
May 20th, 2007
I'm not getting any errors....
Just no output + no database update as I'm getting through IE
My html and php scripts are given below
These are just simple scripts....+
I wanna ask If firefox needs any plugin for AJAX
******************
<html>
<head>
<script src="clienthint1.js" language="javascript"></script>
</head>
<body>
<form name="form1">
<input type="text" name="ajaxtest">
<img height="30" width="50"src="Water lilies.jpg" onClick="showUser(document.form1.ajaxtest.value)">
</form>

<p>
<div id="txtHint"><b>User info will be listed here.</b></div>
</p>

</body>
</html>
*****************
And my php script is...
***********
<?php
$q=$_GET["q"];

$con = mysql_connect('localhost', 'root', 'anchal');
if (!$con)
{
die('Could not connect: ' . mysql_error());
}

mysql_select_db("goonj", $con)
or die("Database not selected");

$sql="INSERT into users(name) values('$q')";

mysql_query($sql)
or die("Error");

echo "<table border='1'>
<tr>
<th>DATABASE UPDATED</th>
</tr>";


echo "</table>";

mysql_close($con);
?>
****************
Reply With Quote Quick reply to this message  
Join Date: Jul 2006
Posts: 1,091
Reputation: MattEvans is a jewel in the rough MattEvans is a jewel in the rough MattEvans is a jewel in the rough 
Solved Threads: 63
Moderator
Featured Poster
MattEvans's Avatar
MattEvans MattEvans is offline Offline
Veteran Poster

Re: AJAX not working on firefox

 
0
  #6
May 20th, 2007
I ftp'd your files up to a live host. There, I arranged the files like so:
JavaScript / DHTML / AJAX Syntax (Toggle Plain Text)
  1. www [folder]
  2. |_ temp [folder]
  3. |_ index.html (your html page)
  4. |_ clienthint1.js ( the javascript )
  5. |_ minor.php ( a php file that just echos 'OK', suitable for a test )
I had to change one line of your Javascript:
JavaScript / DHTML / AJAX Syntax (Toggle Plain Text)
  1. var url="http://127.0.0.1/testminor/minor.php"
  2. .. changed to ..
  3. var url="minor.php"
This meets the conditions of Firefox not allowing XMLHTTP open to 3rd party hosts; I could equally have used a full URL; but I'd have had to ensure I used the exact same domain to access the page.

The result is here: http://fusiongroups.net/temp

It works for the version of Firefox I have on Windows (1.0.7); try on yours, let me know if it says 'OK' when you click the button... If it does, the XMLHTTP open is working, and this means that there may still be a problem in that the domain you're using to access the page differs from the domain referenced in the XMLHTTP open() URL.

If the page at that link doesn't work (i.e. no OK when clicking the image), I'll swap operating system and have a look on the latest Firefox for you.
Plato forgot the nullahedron..
Reply With Quote Quick reply to this message  
Join Date: Jul 2006
Posts: 67
Reputation: himanjim is an unknown quantity at this point 
Solved Threads: 1
himanjim himanjim is offline Offline
Junior Poster in Training

Re: AJAX not working on firefox

 
0
  #7
May 20th, 2007
Thanks a lot for this...
I caught the problem
But as u know php scripts run under server only so as I'm test my scripts on xampp...The address 127.0.0.1 is mandatory for the scripts to run...unless I make directory structure like u have done...
Reply With Quote Quick reply to this message  
Join Date: Jul 2006
Posts: 1,091
Reputation: MattEvans is a jewel in the rough MattEvans is a jewel in the rough MattEvans is a jewel in the rough 
Solved Threads: 63
Moderator
Featured Poster
MattEvans's Avatar
MattEvans MattEvans is offline Offline
Veteran Poster

Re: AJAX not working on firefox

 
0
  #8
May 20th, 2007
Try and test on a 'real server'; or make sure that you always also access the page with the Javascript directly from 127.0.0.1. Providing that you do that; you should be able to omit the 127.0.0.1 from the Javascript code (which also removes the need to change the code when you do go live).

Xampp sets up a system whereby you can access any kind of page in a folder using a http url, so you should certainly be able to make a folder structure similar to the one I did.
Plato forgot the nullahedron..
Reply With Quote Quick reply to this message  
Join Date: Jul 2006
Posts: 67
Reputation: himanjim is an unknown quantity at this point 
Solved Threads: 1
himanjim himanjim is offline Offline
Junior Poster in Training

Re: AJAX not working on firefox

 
0
  #9
May 21st, 2007
Ya I'll do that...Thnx a lot
Reply With Quote Quick reply to this message  
Join Date: May 2007
Posts: 20
Reputation: smalldog is an unknown quantity at this point 
Solved Threads: 1
smalldog smalldog is offline Offline
Newbie Poster

Re: AJAX not working on firefox

 
0
  #10
May 21st, 2007
Himanjim, remember that you cannot connect to another domain using AJAX in Mozilla based browsers, so you can use just relative path of request like '/test/file.php'..
Join a forum for webmasters and developers
HTML Forum
Reply With Quote Quick reply to this message  
Reply

This thread is more than three months old.
Perhaps start a new thread instead?
Message:



Similar Threads
Other Threads in the JavaScript / DHTML / AJAX Forum
Thread Tools Search this Thread



About Us | Contact Us | Advertise | DaniWeb | Acceptable Use Policy | RSS Feed

©2003 - 2009 DaniWeb® LLC