www.webdeveloper.com
Results 1 to 3 of 3

Thread: xmlHTTPrequest - no response from server

  1. #1
    Join Date
    Jun 2006
    Location
    Doncaster
    Posts
    78

    xmlHTTPrequest - no response from server

    Hi, I am running the scripts below which should return a string containing a URL.
    So far, it cannot find the form contents in Firefox, but displays the non-dynamic data such as ?Location=. It won't work at all in IE.

    Can any one help?
    This is the form:
    HTML Code:
    <!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 language="javascript" type="text/javascript" src="/js/common.min.js?1266866725">
    </script>
    <script src="calendar.js" type="text/javascript"></script>
    <script src="calendar1.js" type="text/javascript"></script>
    <link href="calendar.css" type="text/css" rel="stylesheet" />
    <style>
    #container	{
    	background-color:#C60;
    	color:#FFF;
    	font-family:"Trebuchet MS", Arial, Helvetica, sans-serif;
    	padding:15px;
    }
    #subtitle	{
    	font-style:italic;
    }
    </style>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Local Session Search</title>
    </head>
    
    <body>
    <script language="javascript" type="text/javascript">
    <!-- 
    //Browser Support Code
    function ajaxFunction(){
    	var ajaxRequest;  // The variable that makes Ajax possible!
    	
    	try{
    		// Opera 8.0+, Firefox, Safari
    		ajaxRequest = new XMLHttpRequest();
    	} catch (e){
    		// Internet Explorer Browsers
    		try{
    			ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
    		} catch (e) {
    			try{
    				ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
    			} catch (e){
    				// Something went wrong
    				alert("Your browser broke!");
    				return false;
    			}
    		}
    	}
    	// Create a function that will receive data sent from the server
    	ajaxRequest.onreadystatechange = function(){
    		if(ajaxRequest.readyState == 4 && ajaxRequest.status==200){
    			document.getElementById("output").innerHTML=ajaxRequest.responseText;
    		}
    	}
    	ajaxRequest.open("GET", "text.php", true);
    	ajaxRequest.send(null); 
    }
    
    //-->
    </script>
    <div id="container">
    	<div id="title">
          <h1>Marketing Session Search</h1>
          <span id="subtitle">Create a link for the nearest sessions in a specified area.
          </span>
          <br />
          Would you like to include this in an email? Click here to access the <span style="font-weight:bold;">mailer</span>.
        </div>
        <div name="form1">
        	Enter the details onto the form.
            <form method="get" name="formdata" id="formdata" onChange="ajaxFunction();">
                <table style="background-color:#FC6; color:#900">
                	<tr>
                    	<td>Area</td>
                        <td>
                          <select name="area" id="area" size="5" >
                            <option value="Chapeltown" selected>North Sheffield</option>
                            <option value="Barnsley">Barnsley</option>
                            <option value="Kimberworth">North Rotherham</option>
                            <option value="Doncaster">Doncaster</option>
                            <option value="S****horpe">S****horpe</option>
                            <option value="Grimsby">Grimsby/Cleethorpes</option>
                            <option value="Lincoln">Lincoln</option>
                            <option value="Skegness">Skegness</option>
                            <option value="Spalding">Boston/Spalding</option>
                            <option value="OT">Other</option>
                          </select>
                         </td>
                       </tr>
                       <tr>
                         <td>Start Date:</td>
                         <td><input type="text" name="date" id="date" value="yyyymmdd"/></td>
                       <tr>
                       <tr>
                         <td>Finish Date:</td>
                         <td><input type="text" name="fdate" id="fdate" value="yyyymmdd"/>
    						<!--
                            <script type="text/javascript">
                            onfocus(fdate))	{
    							document.write("date")
    						}
                            </script>
                            -->
                         </td>
                       </tr>
                       <tr>
                       	<td>Include Weekends?</td>
                        <td><input name="wknd" type="radio" value="MTWHFSU" checked />Yes	
                      		<input name="wknd" type="radio" value="MTWHF" />No	
                        	<br />
                           	<input name="wknd" type="radio" value="SU" />Weekends only
                         </td>
                      </tr>
                  </table> 
                  
            </form>
            Your query reads:<span id="output"></span>
          
      </div>
    </div>
    </body>
    </html>
    and this is the PHP:

    <?php
    // details sent from form

    $area=$_GET["area"];
    $sdate=$_GET["date"];
    $fdate=$_GET["date"];
    $wkend=$_GET["wkend"];

    // process
    $area = "?Location=".$area;
    $sdate = "&AfterDate=".$sdate;
    $fdate = "&BeforeDate=".$fdate;
    $wkend = "&Days=".$wkend;

    // construct text
    $common = "http://www.brew.co.uk/SessionSearcher/ShowResults.aspx";
    $sweep = $common.$area.$sdate.$fdate.$wkend;
    echo $sweep;
    ?>[/PHP]

  2. #2
    Join Date
    Dec 2003
    Location
    Bucharest, ROMANIA
    Posts
    15,428
    Remove the comments
    <!--
    and
    //-->

    Under an XHTML Doctype, special characters like < or > are taken as tag's enclosures.

    language is deprecated. Keep only type="text/javascript"

  3. #3
    Join Date
    Mar 2010
    Posts
    2,803
    I suspect your form data is not being passed to your ajax function using

    PHP Code:
    <form method="get" name="formdata" id="formdata" onChange="ajaxFunction();"
    If you haven't already done so, check if the form data is being passed to ajaxFunction() using alert() and then onto text.php using echo statements or a debugger.

    You just need to do some basic debugging 101 to find the source of the problem.
    Last edited by tirna; 05-06-2010 at 05:58 AM.

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
HTML5 Development Center



Recent Articles