Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.08.2010, 19:14   #1
Rusl92
Форумчанин
 
Аватар для Rusl92
 
Регистрация: 30.03.2008
Сообщений: 392
Плохо проблема с кодировкой utf8

Здравствуйте, не могли бы вы мне помочь:
друг из Флэша посылает get запросы к скриптам
во Флэше стоит кодировка utf8
поэтому функция запроса к БД
Код:
config.php

 function do_query($z){
    global $mysql_server,$mysql_user, $mysql_pass, $mysql_name;
    $lin = mysql_pconnect($mysql_server,$mysql_user, $mysql_pass);
    mysql_query("SET NAMES 'utf8'");
    if (mysql_select_db($mysql_name, $lin)) {
      return mysql_query($z);
    }
  }

P.S mysql_query("SET NAMES 'cp1251'"); - вместо русских букв в созданных записях была абра-кадабра

в БД кодировка utf8_bin

Итак, если я делаю запрос к БД
Код:
include_once('config.php');
$result = do_query('SELECT * FROM `Recept` WHERE type='.$type.' AND name LIKE "'.$symbol.'%"');
...
if (mysql_num_rows($result))
то
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in Z:\home\ruslNew\www\list.php on line 18
и ничего не выдается на выход

Если же я в config.php
меняю
Код:
mysql_query("SET NAMES 'utf8'");
на
Код:
mysql_query("SET NAMES 'cp1251'");
то все работает!

Что мне делать - заранее спс!
Программирование - это великое искусство... Такое же как например и живопись!
Rusl92 вне форума Ответить с цитированием
Старый 02.08.2010, 19:19   #2
Виталий Желтяков
Старожил
 
Аватар для Виталий Желтяков
 
Регистрация: 19.04.2010
Сообщений: 2,702
По умолчанию

Посмотрите, что xdebug пишет.
Виталий Желтяков вне форума Ответить с цитированием
Старый 02.08.2010, 19:30   #3
Rusl92
Форумчанин
 
Аватар для Rusl92
 
Регистрация: 30.03.2008
Сообщений: 392
По умолчанию

не пользуюсь им(

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in Z:\home\ruslNew\www\list.php on line 18

появляется в браузере!

а при cp1251 все норм выдает на выход записи требуемые!
Программирование - это великое искусство... Такое же как например и живопись!

Последний раз редактировалось Rusl92; 02.08.2010 в 19:44.
Rusl92 вне форума Ответить с цитированием
Старый 02.08.2010, 21:20   #4
arvitaly
Пользователь
 
Аватар для arvitaly
 
Регистрация: 01.08.2010
Сообщений: 51
По умолчанию

Код:
mysql_query($sql) or die(mysql_error());
что выдает?
arvitaly вне форума Ответить с цитированием
Старый 03.08.2010, 05:13   #5
Виталий Желтяков
Старожил
 
Аватар для Виталий Желтяков
 
Регистрация: 19.04.2010
Сообщений: 2,702
По умолчанию

Ну, значит у вас где-то проблема с кодировками. Либо поступившие параметры в запросах, либо кодировки в настройках mySQL. Проверьте базу через phpmyadmin (надеюсь, хоть он у Вас есть).
Виталий Желтяков вне форума Ответить с цитированием
Старый 03.08.2010, 08:41   #6
Rusl92
Форумчанин
 
Аватар для Rusl92
 
Регистрация: 30.03.2008
Сообщений: 392
По умолчанию

mysql_query("SET NAMES 'utf8_bin'"); - решилось
phpmyadmin - Денвер стоит
спасибо всем, проблема решена!
Программирование - это великое искусство... Такое же как например и живопись!
Rusl92 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с кодировкой nolz Microsoft Office Word 1 07.01.2012 22:20
Проблемы с кодировкой UTF8 Terikon Общие вопросы Delphi 30 11.09.2011 22:48
проблема с кодировкой Demonmov C++ Builder 1 02.06.2010 01:15
Проблема с кодировкой motorway Microsoft Office Excel 3 03.07.2009 22:27
Проблема с кодировкой feniks65 Паскаль, Turbo Pascal, PascalABC.NET 13 06.01.2009 11:00