elenco a discesa php ajax

Qualcuno può dirmi cosa c'è di sbagliato con questo codice di esempio su questo sito http://www.x-developer.com/php-scripts/loading-drop-downs-with-ajax-php-and-fetching-values-from- Database-without-rinfrescante-the-page

Fondamentalmente ho fatto esattamente come nel turorial e il problema è che il secondo elenco a discesa non mostra nulla. Ho letto uno dei commenti che qualcuno ha dimenticato di aggiungere in qualche javascript sulla pagina. Come faccio a fare questo?

Ho provato a pubblicare una domanda su quel sito ma nessuno ha risposto per una settimana, quindi sono venuto qui.

Qualsiasi aiuto sarebbe molto apprezzato.

questa è la mia pagina index.php

<?php include('cn.php'); $sql_country = "SELECT * FROM COUNTRY"; $result_country = mysql_query($sql_country); echo "<select name='country' onChange='get_cities(this.value)'>"; //get_cities is defined below while($row_country = mysql_fetch_arrays($result_country)) { echo "<option value='".$row_country['id']."'>".$row_country['country']."</option>"; } echo "</select>"; echo "<select name='city' id='city'></select>"; //We have given id to this dropdown ?> 

questa è la mia pagina get_cities.js

 function get_cities(country_id) { $.ajax({ type: "POST", url: "cities.php", /* The country id will be sent to this file */ beforeSend: function () { $("#city").html("<option>Loading ...</option>"); }, data: "country_id="+country_id, success: function(msg){ $("#city").html(msg); } }); } 

Questa è la mia pagina cities.php

 <?php include('cn.php'); // Code for cities.php $country_id = $_REQUEST['country_id']; $sql_city = "SELECT * FROM CITY WHERE country_id = '".$country_id."'"; $result_city = mysql_query($sql_city); echo "<select name='city'>"; while($row_city = mysql_fetch_arrays($result_city)) { echo "<option value='".$row_city['id']."'>".$row_city['city']."</option>"; } echo "</select>"; ?> 

Il 'cn.php' incluso è solo la mia connessione al database.

 //Index.php <?php $conn = mysql_connect("localhost", "root", "root"); $db = mysql_select_db("country_example", $conn); $sql_country = "SELECT * FROM country"; $result_country = mysql_query($sql_country); ?> <!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> <title>Country List</title> </head> <body> <?php echo "<select name='country' onChange='get_cities(this.value)'>"; while($row_country = mysql_fetch_arrays($result_country)) { echo "<option value='".$row_country['id']."'>".$row_country['country']."</option>"; } echo "</select>"; echo "<div id='cityLayer'><select name='city' id='city'></select></div>"; ?> <script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> <script type="text/javascript"> function get_cities($country_id){ $.ajax({ url : "city.php?country_id="+$country_id, cache : false, beforeSend : function (){ //Show a message }, complete : function($response, $status){ if ($status != "error" && $status != "timeout") { $('#cityLayer').html($response.responseText); } }, error : function ($responseObj){ alert("Something went wrong while processing your request.\n\nError => " + $responseObj.responseText); } }); } </script> </body> </html> //City.php <?php $conn = mysql_connect("localhost", "root", "root"); $db = mysql_select_db("country_example", $conn); $country_id = $_REQUEST['country_id']; $sql_city = "SELECT * FROM cities WHERE country_id = '".$country_id."'"; $result_city = mysql_query($sql_city); echo "<select name='city'>"; while($row_city = mysql_fetch_arrays($result_city)) { echo "<option value='".$row_city['id']."'>".$row_city['city']."</option>"; } echo "</select>"; ?>