Показать сообщение отдельно

  #3  
Старый 04.10.2009, 00:40
diGriz
Участник форума
Регистрация: 11.10.2006
Сообщений: 134
Провел на форуме:
3607644

Репутация: 235
По умолчанию

С jQuery примерно так. Выбираешь страны из бд, заносишь в массив $countryArr, потом выводишь в списке. При событии onChange() получаем Id страны и вытаскиваем города.
PHP код:
<html>
    <head>
        <title></title>
         <script src='../js/jquery.js' type='text/javascript'></script>
         <script type="text/javascript">
            $(document).ready(function(){
                   showCountriesById($('#countryId').val());
             });
            function showCountriesById (val) {
            $.ajax({
            type: "POST",
            url: "ajax.php",
            data: "countryId="+val,
            success: function(html){
                $("#cityContainer").html(html);
            }
        });
        }
        </script>
    </head>
    <body>
      <select name="countryId" id="countryId" onchange="showCountriesById(this.value)">
                <?php
                
//Выводишь страны
                
if (isset( $countryArr)) 
                {
                
?>
                    <?php
                    
foreach ( $countryArr as $s) {
                    
?>
                        <option value="<?=$s['id']?>"><?=$s['strana']?></option>
                    <?php
                    
}
                    
?>
                <?php
                
}
                
?>
                </select>
                    <div id="cityContainer">    </div>    
    </body>
</html>
Файл ajax.php
PHP код:
<?php
$countryId 
$_POST['countryId'];
//Выбираешь из бд города и заносишь в массив
$html .= '<select name="cities">';
while (
$row mysql_fetch_array($res)) {
    
$html    .= '<option value="'.$row['id'].'" >'.$row['gorod']'.</option>';
}
echo 
$html;
?>

Последний раз редактировалось diGriz; 04.10.2009 в 00:48..
 
Ответить с цитированием