Структура : Код (Text): CREATE TABLE Kladr ( `name` VARCHAR( 40 ), `socr` VARCHAR( 10 ), `code` VARCHAR( 13 ), `index` VARCHAR( 6 ), `gninmb` VARCHAR( 4 ), `uno` VARCHAR( 4 ), `ocatd` VARCHAR( 11 ), `status` VARCHAR( 1 )) ; CREATE TABLE Street (`name` VARCHAR( 40 ), `socr` VARCHAR( 10 ), `code` VARCHAR( 17 ), `index` VARCHAR( 6 ), `gninmb` VARCHAR( 4 ), `uno` VARCHAR( 4 ), `ocatd` VARCHAR( 11 )) ; CREATE TABLE Doma (`name` VARCHAR( 40 ), `korp` VARCHAR( 10 ), `socr` VARCHAR( 10 ), `code` VARCHAR( 19 ), `index` VARCHAR( 6 ), `gninmb` VARCHAR( 4 ), `uno` VARCHAR( 4 ), `ocatd` VARCHAR( 11 )); CREATE TABLE Flat (`name` VARCHAR( 40 ), `code` VARCHAR( 23 ), `index` VARCHAR( 6 ), `gninmb` VARCHAR( 4 ), `uno` VARCHAR( 4 ), `np` VARCHAR( 4 )); CREATE TABLE Socrbase(`level` VARCHAR( 5 ), `scname` VARCHAR( 10 ), `socrname` VARCHAR( 29 ), `kod_t_st` VARCHAR( 3 )); CREATE TABLE Altnames(`oldcode` VARCHAR( 19 ), `newcode` VARCHAR( 19 ), `level` VARCHAR( 1 )); CREATE TABLE country(`name` VARCHAR( 40 ), `id` VARCHAR( 19 )); скрипт: Код (Text): <? // указываем параметры для подключения к MySQL $host='localhost'; // имя хоста $database='baza'; // имя базы данных $user='admin'; // заданное вами имя пользователя $pswd='pasw'; // заданный вами пароль // подключаемся к MySQL $dbh = mysql_connect($host, $user, $pswd) or die("Не могу соединиться с MySQL."); mysql_select_db($database) or die("Не могу подключиться к базе."); define("db_prefix","pb_"); function is_sel($a, $field) { $b = isset($_POST[$field])?$_POST[$field]:NULL; if($a == $b) return 'selected="selected"'; } $res = mysql_query('SELECT * FROM '.db_prefix.'country'); ?> <form id="frm" method="post"> <select name="country" onchange="document.getElementById('frm').submit()" > <option value='null'>- Выберите страну -</option> <? // выводим все строки из столбца name таблицы country while($row = mysql_fetch_array($res)) echo "<option ".is_sel($row['id'],'country')." value='" . $row['id'] . "'>" . $row['name'] . "</option>\r\n"; echo "</select>"; if(isset($_POST['country'])) { $res=mysql_query('SELECT * FROM '.db_prefix.'area WHERE country="'.mysql_real_escape_string($_POST['country']).'"'); if(mysql_num_rows($res)){ echo "<select name=\"region\" onchange=\" document.getElementById('frm').submit();\" > <option id=\"region\" value='0'>- Выберите pегион -</option>"; while($row = mysql_fetch_array($res)) echo "<option ".is_sel($row['id'],'region')." value='" . $row['id'] . "'>" . $row['name'] . "</option>\r\n"; echo "</select>"; }else{ // выбираю города без учета региона $res=mysql_query('SELECT * FROM '.db_prefix.'city WHERE country='.mysql_real_escape_string($_POST['country'])); echo "<select id=\"city\" name=\"city\" onchange=\"document.getElementById('frm').submit()\" > <option value='0'>- Выберите город -</option>"; while($row = mysql_fetch_array($res)) echo "<option ".is_sel($row['id'],'city')." value='" . $row['id'] . "'>" . $row['name'] . "</option>\r\n"; echo "</select>"; } } $region = isset($_POST['region'])?$_POST['region']:NULL; if($region && $region !== 0) { $res=mysql_query('SELECT * FROM '.db_prefix.'city WHERE area='.(int)$_POST['region']); echo "<select id=\"city\" name=\"city\" onchange=\"document.getElementById('frm').submit()\" > <option value='0'>- Выберите город -</option>"; while($row = mysql_fetch_array($res)) echo "<option ".is_sel($row['id'],'city')." value='" . $row['id'] . "'>" . $row['name'] . "</option>\r\n"; echo "</select>"; } ?> </form> <? $city = isset($_POST['city'])?$_POST['city']:NULL; if($city && $city !== 0) { $res=mysql_query('SELECT * FROM '.db_prefix.'city WHERE id='.(int)$_POST['city'].' LIMIT 1'); $row = mysql_fetch_array($res); echo "<h1>Хочу в ".$row['name']."!</h1>"; } ?> Данные планирую подтянуть из КЛАДР, затык собственно в : Код (Text): $res = mysql_query('SELECT * FROM '.db_prefix.'country'); неработает Код (Text): $res = mysql_query('SELECT * FROM 'country'); работает, но русские буквы отражает ????? не грешно ли так использовать, сильно не пиннайте только учусь,.... если чтото у когото по интереснее есть если не жалко то преветствуется =)
Есть поинтереснее. mysqli_query, ибо mysql_query устарела. далее, я так полагаю, тут кое-что забыто: .$db_prefix.