Intercambio de datos con JSON

Página ciudades PHP:

<?php
include "bd.php";
$pais = filter_input(INPUT_GET, 'pais');
$sql = "select * from city where country_id=" . $pais;
$ciudades = getSqlRows($sql);
echo json_encode($ciudades);

Página html:

 $('#paises').change(function () {
                    $.get('ciudades.php?pais=' + $(this).val(), function (data, status) {
                        var ciudades = JSON.parse(data);

                        $("#ciudades option").remove();

                        for (var d in ciudades) {

                            $('#ciudades').append($('', {
                                value: ciudades[d].city_id,
                                text: ciudades[d].city
                            }));
                        }
                    });
                });

Necesitaré tener lo siguiente:

 <select id="paises">
 <option value="0">Seleccione un país...</option>
 <?php
 foreach ($paises as $pais) {
 ?>
 <option value="<?= $pais['country_id'] ?>"><?= $pais['country'] ?></option>
 <?php
 }
 ?>
 </select>
 <select id="ciudades"><option value="0">Seleccione un país para ver sus ciudades</option></select>

Publicado por

Juan Pablo Fuentes

Formador de programación y bases de datos