51 (изменено: DmitryV, 2010-11-25 21:16:22)

Re: Help

php намного лешче чем с++ если Вы знакомы с с++ то проблем быть не должно если вы ознакомились с документацией по синтаксису php с php.net

52 (изменено: Ketsyki, 2010-11-28 12:14:47)

Re: Help

Блин, у меня phpmyadmin перестал работать. Ввожу логин и пароль а дальше ничего не происходит... И сайт не работает из-за чего-то sad Данные в БД не отправляются:(

Переустановка помогает. Есть мысль что это из-за редактирования файл php.ini я там pdo добавлял и еще что-то

53

Re: Help

Ketsyki сказал:

у меня phpmyadmin перестал работать.

Приводите ошибки из журналов Apache. Без логов ничего подсказать невозможно.

Покажите как вы PDO подключили в php.ini.

То есть. PDO включаем и сайт не работает - выключаем PDO и сайт работает?

54 (изменено: Ketsyki, 2010-11-28 15:44:41)

Re: Help

Я понял почему не запускался phpmyadmin smile я в php.ini случайно комент не там убрал

Вот щас переустановил Xamp. Вот настройки php.ini:
extension=php_bz2.dll
;extension=php_curl.dll
;extension=php_dba.dll
;extension=php_dblib.dll
extension=php_mbstring.dll
extension=php_exif.dll
extension=php_fileinfo.dll
extension=php_gd2.dll
extension=php_gettext.dll
;extension=php_gmp.dll
extension=php_imap.dll
;extension=php_interbase_firebird.dll
;extension=php_interbase_interbase.dll
;extension=php_intl.dll
;extension=php_ldap.dll
extension=php_mcrypt.dll
;extension=php_mssql.dll
;extension=php_mysql_mysqlnd.dll
extension=php_mysql_libmysql.dll
;extension=php_mysqli_mysqlnd.dll
extension=php_mysqli_libmysql.dll
;extension=php_oci8.dll
extension=php_pdo.dll
;extension=php_pdo_dblib.dll
;extension=php_pdo_firebird_firebird.dll
;extension=php_pdo_firebird_interbase.dll
;extension=php_pdo_mssql.dll
;extension=php_pdo_mysql_mysqlnd.dll
extension=php_pdo_mysql_libmysql.dll
extension=php_pdo_odbc.dll
;extension=php_pdo_pgsql.dll
extension=php_pdo_sqlite.dll
;extension=php_pdo_sqlite_external.dll
;extension=php_pgsql.dll
;extension=php_pspell.dll
;extension=php_shmop.dll
;extension=php_snmp.dll
extension=php_soap.dll
extension=php_sockets.dll
extension=php_sqlite.dll
extension=php_sqlite3.dll
;extension=php_sybase_ct.dll
;extension=php_tidy.dll
extension=php_xmlrpc.dll
extension=php_zip.dll

55 (изменено: Ketsyki, 2010-12-06 20:52:44)

Re: Help

Товарищи, внезапно код заработал О_О. Но теперь начались траблы с кодировкой. Вот кодировка в БД 

city InnoDB    cp1251_general_ci
country InnoDB    cp1251_general_ci    
region InnoDB    cp1251_general_ci


В странице index написано:

 <meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />

Данные, пришедшие из БД отображаются так: ????????????
Юзал DBSimple для выборки данных.
В чем трабла?

56

Re: Help

Ketsyki сказал:

Данные, пришедшие из БД отображаются так: ????????????

Необходимо установить кодировку соединения с MySQL. Лучше всего это сделать в скрипте, где сразу после соединения с MySQL необходимо выполнить запрос:

SET NAMES cp1251;

Если отредактировать скрипт не получается, то установить кодировку соединения с MySQL можно глобально, но в данном случае она будет действовать на все скрипты соединяющиеся с MySQL.

В конфигурационном файле MySQL (my.ini) добавьте в раздел [mysqld] строку:

init-connect="SET NAMES cp1251"

57

Re: Help

Погодите, в таком коде

<?php
require_once "lib/config.php";
require_once "DbSimple/Generic.php";
$DB = DbSimple_Generic::connect("mysql://myusername:mypassword@localhost/place");
$DB->query('SET NAMES cp1251'); // Устанавливаем кодировку соединения с MySQL.

$id   = (int)$_POST['id']; 
$type = $_POST['type']; // тип списка, который нужно получить (города или регионы)

sleep(1); 

if ($type == 'city') {
     
     $cities = $DB->select('SELECT *

                                    FROM city
                                    WHERE region_id = ?d
                                    ORDER BY name', $id);
     if (!empty($cities)) {
         echo "out.options[out.options.length] = new Option('выберите город...','none');\n";
         foreach ($cities as $city) {
              echo "out.options[out.options.length] = new Option('".$city['name']."','".$city['city_id']."');\n";
         }
     }
     else {
          echo "out.options[out.options.length] = new Option('нет городов','none');\n";
     }
}
if ($type == 'region') {
     
     $regions = $DB->select('SELECT *
                                      FROM region
                                      WHERE country_id = ?d
                                      ORDER BY name', $id);
     if (!empty($regions)) {
         echo "out.options[out.options.length] = new Option('выберите регион...','none');\n";
         foreach ($regions as $region) {
              echo "out.options[out.options.length] = new Option('".$region['name']."','".$region['region_id']."');\n";
         }
     }
     else {
          echo "out.options[out.options.length] = new Option('нет регионов','none');\n";
     }
}
?>

Куда писать

SET NAMES cp1251;

?

58

Re: Help

Сразу после соединения надо добавить строку:
$DB->query('SET NAMES cp1251');

Прописал в вашем примере выше.

59 (изменено: Ketsyki, 2010-12-07 20:25:14)

Re: Help

Теперь вместо знаков вопроса появились черные ромбики...
Английские названия городов и регионов из БД выглядят нормально, а вот вместо русских названий черные ромбики со знаком вопроса

60

Re: Help

Ketsyki сказал:

вместо русских названий черные ромбики со знаком вопроса

Значит данные идут в Юникоде. Проверьте кодировку страницы скрипта, она должна быть в ANSI, не в UTF8.

Если со скриптом проблем нет, то покажите каким образом данные передаются в БД.

61 (изменено: Ketsyki, 2010-12-07 22:21:33)

Re: Help

index.html

<head>

    <title>Форма Докладчика</title>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
    <link type="text/css" href="css/ui-lightness/jquery-ui-1.8.6.custom.css" rel="stylesheet" />    
    <script type="text/javascript" src="js/jquery-1.4.2.min.js"></script>
    <script type="text/javascript" src="js/jquery-ui-1.8.6.custom.min.js"></script>
    <script src="js/jquery-ui-i18n.js" type="text/javascript"></script> 

<script type="text/javascript" src="js/jquery-1.4.2.min.js"></script> 
   <script type="text/javascript" src="js/jquery-ui-1.8.6.custom.min.js"></script> 
   <script src="js/jquery-ui-i18n.js" type="text/javascript"></script> 
         <script type="text/javascript"> 
         function getList(type, obj) { 
            $('#loading_' + type).show(); 
            $.post('city.php', {type: type, id: $('#'+obj).val()}, onAjaxSuccess); 
            function onAjaxSuccess(data) { 
                    out = document.getElementById(type); 
                   for (var i = out.length - 1; i >= 0; i--) { 
                        out.options[i] = null; 
                   } 
                    eval(data); 
                    $('#loading_' + type).hide(); 
            } 
         } 
         </script>  

<script type="text/javascript">
$(function(){
  $.datepicker.setDefaults(
        $.extend($.datepicker.regional["ru"])
  );
  $("#Date").datepicker({
    minDate: new Date(1950, 1 - 1, 1),
    maxDate: new Date(2000, 1 - 1, 1),
    changeYear: true,
yearRange: '1950:1999',
changeMonth: true,
dateFormat: "yy-mm-dd"

  });
});
</script> 

<script>
function checkForm(obj){
                var return_value = true;
// Фамилия
var reg_Surname = /^[а-я]+$/i;
var Surname = obj.Surname.value

//Имя
var reg_Name = /^[а-я]+$/i;
var Name = obj.Name.value

//Отчество
var reg_Patronymic = /^[а-я]+$/i;
var Patronymic = obj.Patronymic.value

//E-mail
var reg_Email = /[0-9a-z_]+@[0-9a-z_^.]+.[a-z]{2,3}$/i;
var Email = obj.Email.value;

//Пол
var reg_Sex = /^[а-я]+$/i;
var Sex = obj.Sex.value;

//Дата
var reg_Date = /^[0-9-]+$/i;
var Date = obj.Date.value;


//Класс
var reg_Class = /^[0-9]+$/i;
var Class = obj.Class.value;




// Текст сообщения об ошибке
var error_msg = "Не корректно заполнины поля: ";
// Проверка поля Фамилия
if(!reg_Surname.test(Surname)){
                    error_msg += "\rФамилия: Проверьте, заполнено ли данное поле, используйте только русские буквы" ;
                    return_value = false;
}

if(!reg_Name.test(Name)){
                    error_msg += "\rИмя: : Проверьте, заполнено ли данное поле, используйте только русские буквы";
                    return_value = false;
}

if(!reg_Patronymic.test(Patronymic)){
                    error_msg += "\rОтчество: : Проверьте, заполнено ли данное поле, используйте только русские буквы";
                    return_value = false;
}

if(!reg_Email.test(Email)){
error_msg += "\rE-mail: Проверьте, заполнено ли данное поле, ваш e-mail должен иметь такой вид: user@domain.com (допускаются и другие домены)";
return_value = false;
}


if(!reg_Sex.test(Sex)){
error_msg += "\rПол: Проверьте, заполнено ли данное поле";
return_value = false;
}

if(!reg_Date.test(Date)){
error_msg += "\rДата рождения: Проверьте, заполнено ли данное поле";
return_value = false;
}


if(!reg_Class.test(Class)){
error_msg += "\rКласс: Проверьте, заполнено ли данное поле";
return_value = false;
}



//Проверка на наличие ошибок, если ошибка возникла, то выводим текст сообщения
        if(!return_value)
                    alert(error_msg);
                   
                return return_value;
            }

</script>

</head>

<body>

<form method="POST" action="loan.php" onsubmit="return checkForm(this);">

Фамилия:
<input name="Surname" type="text">
<br>
Имя:
<input name="Name" type="text">
<br>
Отчество:
<input name="Patronymic" type="text">
<br>
E-mail:
<input name="Email" type="text">
<br>
Пол:
<select name="Sex">
<option value=></option>
<option value=Мужской>Мужской</option>
<option value=Женский>Женский</option>
</select>
<br>
Дата рождения:

<input name="Date" id="Date" type="text" />

<br>
 <div>страна</div> 
         <div> 
               <select name="country_id" id="country" onchange="getList('region', 'country')" style="width:300px;"> 
<option value="" selected="selected"></option> 
<option value="4">Австралия</option> 
                                                   <option value="63">Австрия</option> 
                                                   <option value="81">Азербайджан</option> 
                                                   <option value="173">Ангуилья</option> 
                                                   <option value="177">Аргентина</option> 
                                                   <option value="245">Армения</option> 
                                                   <option value="7716093">Арулько</option> 
                                                   <option value="248">Беларусь</option> 
                                                   <option value="401">Белиз</option> 
                                                   <option value="404">Бельгия</option> 
                                                   <option value="425">Бермуды</option> 
                                                   <option value="428">Болгария</option> 
                                                   <option value="467">Бразилия</option> 
                                                   <option value="616">Великобритания</option> 
                                                   <option value="924">Венгрия</option> 
                                                   <option value="971">Вьетнам</option> 
                                                   <option value="994">Гаити</option> 
                                                   <option value="1007">Гваделупа</option> 
                                                   <option value="1012">Германия</option> 
                                                   <option value="1206">Голландия</option> 
                                                   <option value="2567393">Гондурас</option> 
                                                   <option value="277557">Гонконг</option> 
                                                   <option value="1258">Греция</option> 
                                                   <option value="1280">Грузия</option> 
                                                   <option value="1366">Дания</option> 
                                                   <option value="2577958">Доминиканская республика</option> 
                                                   <option value="1380">Египет</option> 
                                                   <option value="1393">Израиль</option> 
                                                   <option value="1451">Индия</option> 
                                                   <option value="277559">Индонезия</option> 
                                                   <option value="277561">Иордания</option> 
                                                   <option value="3410238">Ирак</option> 
                                                   <option value="1663">Иран</option> 
                                                   <option value="1696">Ирландия</option> 
                                                   <option value="1707">Испания</option> 
                                                   <option value="1786">Италия</option> 
                                                   <option value="1894">Казахстан</option> 
                                                   <option value="2163">Камерун</option> 
                                                   <option value="2172">Канада</option> 
                                                   <option value="582029">Карибы</option> 
                                                   <option value="2297">Кипр</option> 
                                                   <option value="2303">Киргызстан</option> 
                                                   <option value="2374">Китай</option> 
                                                   <option value="582040">Корея</option> 
                                                   <option value="2430">Коста-Рика</option> 
                                                   <option value="582077">Куба</option> 
                                                   <option value="2443">Кувейт</option> 
                                                   <option value="2448">Латвия</option> 
                                                   <option value="582060">Ливан</option> 
                                                   <option value="2505884">Ливан</option> 
                                                   <option value="2509">Ливия</option> 
                                                   <option value="2514">Литва</option> 
                                                   <option value="2614">Люксембург</option> 
                                                   <option value="582041">Македония</option> 
                                                   <option value="277563">Малайзия</option> 
                                                   <option value="582043">Мальта</option> 
                                                   <option value="2617">Мексика</option> 
                                                   <option value="582082">Мозамбик</option> 
                                                   <option value="2788">Молдова</option> 
                                                   <option value="2833">Монако</option> 
                                                   <option value="2687701">Монголия</option> 
                                                   <option value="582065">Морокко</option> 
                                                   <option value="277551">Нидерланды</option> 
                                                   <option value="2837">Новая Зеландия</option> 
                                                   <option value="2880">Норвегия</option> 
                                                   <option value="582051">О.А.Э.</option> 
                                                   <option value="582105">Остров Мэн</option> 
                                                   <option value="582044">Пакистан</option> 
                                                   <option value="582046">Перу</option> 
                                                   <option value="2897">Польша</option> 
                                                   <option value="3141">Португалия</option> 
                                                   <option value="3156">Реюньон</option> 
                                                   <option value="3159">Россия</option> 
                                                   <option value="277555">Румыния</option> 
                                                   <option value="5647">Сальвадор</option> 
                                                   <option value="277565">Сингапур</option> 
                                                   <option value="582067">Сирия</option> 
                                                   <option value="5666">Словакия</option> 
                                                   <option value="5673">Словения</option> 
                                                   <option value="5678">Суринам</option> 
                                                   <option value="5681">США</option> 
                                                   <option value="9575">Таджикистан</option> 
                                                   <option value="277567">Тайвань</option> 
                                                   <option value="582050">Тайланд</option> 
                                                   <option value="582090">Тунис</option> 
                                                   <option value="9638">Туркменистан</option> 
                                                   <option value="277569">Туркмения</option> 
                                                   <option value="9701">Туркс и Кейкос</option> 
                                                   <option value="9705">Турция</option> 
                                                   <option value="9782">Уганда</option> 
                                                   <option value="9787">Узбекистан</option> 
                                                   <option value="9908">Украина</option> 
                                                   <option value="10648">Финляндия</option> 
                                                   <option value="10668">Франция</option> 
                                                   <option value="277553">Хорватия</option> 
                                                   <option value="10874">Чехия</option> 
                                                   <option value="582031">Чили</option> 
                                                   <option value="10904">Швейцария</option> 
                                                   <option value="10933">Швеция</option> 
                                                   <option value="582064">Эквадор</option> 
                                                   <option value="10968">Эстония</option> 
                                                   <option value="3661568">ЮАР</option> 
                                                   <option value="11002">Югославия</option> 
                                                   <option value="11014">Южная Корея</option> 
                                                   <option value="582106">Ямайка</option> 
                                                   <option value="11060">Япония</option> 
</select> 
                                            
                                   
                                            
                                      
                                
         </div>    
          
         <div>регион</div> 
         <div style="display: none" id="loading_region"><img alt="" src="ajax_loader.gif" />Загрузка...</div> 
         <div> 
  
               <select name="region_id" id="region" onchange="getList('city', 'region')" style="width:300px;"> 
                                            
  
                                  </select> 
         </div> 
  
         <div>город</div> 
         <div style="display: none" id="loading_city"><img alt="" src="ajax_loader.gif" />Загрузка...</div> 
         <div> 
               <select name="city_id" id="city" style="width:300px;"> 
                                          
                                  </select> 
         </div>    
          
         <br /><br /> 
          
   </div> 
<br>
Название учебного заведения:
<input name="School" type="text">
<br>
Адрес:
<input name="Address" type="text">
<br>
Класс:
<select name="Class">
<OPTION value=""></OPTION>
<option value=11>11</option>
<option value=10>10</option>
<option value=9>9</option>
<option value=8>8</option>
<option value=7>7</option>
</select>
<br>
Фамилия научного руководителя:
<input name="SSurname" type="text">
<br>
Имя научного руководителя:
<input name="SName" type="text">
<br>
Отчество научного руководителя:
<input name="SPatronymic" type="text">
<br>

 

<input type="submit" value="Отправить">
<input type="reset" value="Очистить">
</form>



</body>
</html>

city.php (выборка из БД)

<?php
require_once "lib/config.php";
require_once "DbSimple/Generic.php";
$DB = DbSimple_Generic::connect("mysql://myusername:mypassword@localhost/place");
$DB->query('SET NAMES cp1251');


$id   = (int)$_POST['id']; 
$type = $_POST['type']; // тип списка, который нужно получить (города или регионы)

sleep(1); 

if ($type == 'city') {
     
     $cities = $DB->select('SELECT *

                                    FROM city
                                    WHERE region_id = ?d
                                    ORDER BY name', $id);
     if (!empty($cities)) {
         echo "out.options[out.options.length] = new Option('выберите город...','none');\n";
         foreach ($cities as $city) {
              echo "out.options[out.options.length] = new Option('".$city['name']."','".$city['city_id']."');\n";
         }
     }
     else {
          echo "out.options[out.options.length] = new Option('нет городов','none');\n";
     }
}
if ($type == 'region') {
     
     $regions = $DB->select('SELECT *
                                      FROM region
                                      WHERE country_id = ?d
                                      ORDER BY name', $id);
     if (!empty($regions)) {
         echo "out.options[out.options.length] = new Option('выберите регион...','none');\n";
         foreach ($regions as $region) {
              echo "out.options[out.options.length] = new Option('".$region['name']."','".$region['region_id']."');\n";
         }
     }
     else {
          echo "out.options[out.options.length] = new Option('нет регионов','none');\n";
     }
}
?>

Кстати, надпись "выберите город" и "выберите регион" тоже отображаются в виде ромбиков

Я затестил код, где данные из БД просто выводятся на экран. Дак там все нормально, русские буквы есть.

62

Re: Help

Ketsyki сказал:

Кстати, надпись "выберите город" и "выберите регион" тоже отображаются в виде ромбиков

Думаю файл city.php сохранен в Юникоде.

Если не разберетесь, то вышлите файл city.php на почту hanut@php-myadmin.ru со ссылкой на эту тему форума.

63 (изменено: Ketsyki, 2010-12-08 18:52:30)

Re: Help

Не понял...
Я весь код пишу в блокноте. Вот попробовал написать код, который просто выводит регионы РФ. Первый раз написал - вместо название знаки вопроса. Потом добавил $DB->query('SET NAMES cp1251'); все стало нормально. А вот после отправки этих данных на главную страницу они отображаться нормально не хотят sad

64

Re: Help

Попробуйте в корень сайта положить файл .htaccess со строкой:

PHP_VALUE default_charset windows-1251

Кодировка файла city.php в порядке.

Если где-то в коде есть еще вызов функции соединения DbSimple_Generic::connect, то после каждой такой функции необходимо добавить:

$DB->query('SET NAMES cp1251');

65

Re: Help

Спасибо!!!!!
PHP_VALUE default_charset windows-1251 помогло!!!!

А в чем, все таки, была проблема?

66

Re: Help

Ketsyki сказал:

А в чем, все таки, была проблема?

PHP был настроен на отправку в заголовке (Content-Type) кодировки по умолчанию и судя по всему, это был utf-8, поэтому браузер принимал данные именно в виде Юникода.

Директива default_charset устанавливает кодировку по умолчанию в windows-1251, что и надо для нормально работы. Кодировка данных и кодировка в заголовке Content-Type должны соответствовать друг другу.

67 (изменено: Ketsyki, 2010-12-08 21:37:32)

Re: Help

Хм... Щас вот делаю такую фигню:
на странице index.html в выпадающем списке name=country_id это число.
Вводить число в БД я не хочу. Но, у меня есть БД которая состоит из country_id и name (номер и название страны.) Я пытаюсь сделать так, чтобы при отправке данных в БД номер заменялся названием. Т.е. происходит выборка данных по номеру. В учебнике посмотрел код:

\\Вводим новую переменную country_id и присваиваем ей номер
$country_id=$_POST['country_id'];
\\Дальше надо прицепить выборку из БД. В учебнике написан такой код:
$query = "SELECT name(столбик с названием страны) FROM country(название таблицы) WHERE country_id(название столбика с номером страны) = '$country_id";
\\А вот эту строку вообще не пойму, но в учебнике она написана
$country = mysql_query($query);

Че-то не работает. В учебнике не правильно что-то написано?

68

Re: Help

Здесь надо понять что вы делаете. Если соединение с БД идет через объект DbSimple_Generic::connect, то и дальше работать надо с ним. Тот пример, который вы привели, уже совсем из другой оперы и соединение должно идти напрямую, а значит надо сперва соединиться с БД функцией mysql_connect().

Что касается SQL запроса, то его работу можно проверить в phpMyAdmin.

69 (изменено: Ketsyki, 2010-12-08 21:50:42)

Re: Help

Нее, тут все хитрее smile Файл city.php служит для вставки стран в выпадающий список. А данные формы я ввожу в БД через php не используя DBSimple.
Я соединился, но, просто скинул только часть  кода, который, как мне кажется, не работает.

<?php 

/* Переменные для соединения с базой данных */ 
$hostname = "localhost"; 
$username = "myusername"; 
$password = "mypassword"; 
 

/* email администратора */ 
$adminaddress = "jaumxo@gmail.com"; 

/* создать соединение */ 
mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение "); 
mysql_query('SET NAMES cp1251');
/* выбрать базу данных. Если произойдет ошибка - вывести ее */ 
mysql_select_db(place) or die(mysql_error());  

$country_id=$_POST['country_id'];



$query = "SELECT name FROM country WHERE 'country_id' = '$country_id'";
$result = mysql_query($query); // Выполнение запроса.
$row = mysql_fetch_assoc($result); // Выбираем данные в ассоциативный массив.
$country = $row['name']; // Вкладываем полученное значение в переменную.

mysql_close(); // Здесь лучше не закрывать соединение, тогда не придется его снова открывать ниже.


 


/* создать соединение */ 
mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение "); 
mysql_query('SET NAMES cp1251');
/* выбрать базу данных. Если произойдет ошибка - вывести ее */ 
mysql_select_db(baza) or die(mysql_error());  

echo "<CENTER>"; 
echo "Привет, ".$_POST['Name']; 
echo "<BR><BR>";
echo "</CENTER>"; 


 
/* составить запрос для вставки информации о клиенте в таблицу */
$Surname = addslashes($_POST['Surname']);
$Name = addslashes($_POST['Name']);
$Patronymic = addslashes($_POST['Patronymic']);
$Email = addslashes($_POST['Email']);
$Sex = addslashes($_POST['Sex']);
$Date = addslashes($_POST['Date']);
$Country=addslashes($_POST['Country']);
$School = addslashes($_POST['School']);
$Address = addslashes($_POST['Address']);
$Class = addslashes($_POST['Class']);
$SSurname = addslashes($_POST['SSurname']);
$SName = addslashes($_POST['SName']);
$SPatronymic = addslashes($_POST['SPatronymic']);

$query = "INSERT INTO reporter VALUES('$Surname','$Name','$Patronymic','$Email','$Sex','$Date','$Country','$Region','$City','$School','$Address','$Class','$SSurname','$SName','$SPatronymic')"; 
/* Выполнить запрос. Если произойдет ошибка - вывести ее. */ 
mysql_query($query) or die(mysql_error()); 
echo "Информация о вас занесена в базу данных."; 

/* Закрыть соединение */ 
mysql_close(); 
?> 

70

Re: Help

Поправил в коде.

$query = "SELECT name FROM country WHERE 'country_id' = '$country_id'";
$result = mysql_query($query); // Выполнение запроса.
$row = mysql_fetch_assoc($result); // Выбираем данные в ассоциативный массив.
$country = $row['name']; // Вкладываем полученное значение в переменную.

mysql_close(); // Здесь лучше не закрывать соединение, тогда не придется его снова открывать ниже.

71

Re: Help

Не работает. Я тут попробовал посмотреть, что записывается в $result и выдается такая штука Resource id #3

72

Re: Help

Ketsyki сказал:

Не работает. Я тут попробовал посмотреть, что записывается в $result и выдается такая штука Resource id #3

Ошибка скорее в запросе, где надо заменить одинарные кавычки на косые. Проверьте как работает запрос в phpMyAdmin и только потом запускайте скрипт.

$query = "SELECT `name` FROM `country` WHERE `country_id` = '$country_id'";

Для отлавливания ошибок делайте проверки.

if ($result = mysql_query($query)) {
    if ($row = mysql_fetch_assoc($result)) {
        $country = $row['name'];
    } else exit('Ошибка');
} else exit('Ошибка');

73 (изменено: Ketsyki, 2010-12-08 23:07:01)

Re: Help

нет, ну это писец. в апаче ошибок нет, код для ошибок заюзал - тоже нифига... Но Страна в базу не идет, хотя все остальные данные идут...

Хотя... недельки через 3 код может опять внезапно заработать smile

Как я понял:

$country_id=$_POST['country_id']; Переменной присваиваем число из выпадающего списка (например 13)
$query = "SELECT name FROM country WHERE 'country_id' = '$country_id'"; (из таблицы country выбираем name у которого id равен 13)Правильно?

74

Re: Help

Выполните в phpMyAdmin этот запрос и поймете, что в нем ошибка.

SELECT name FROM country WHERE 'country_id' = 13

Ошибка заключается в одинарных кавычках 'country_id', потому что в кавычках строка, а не название поля. Названия таблиц и полей должны быть забраны в косые кавычки. Выше я уже привел исправленную строку.

75

Re: Help

Пробовал кавычки менять. Не катит. Данные в БД не идут.