[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Проблемма с запросом к bd
strannic
Делаю запрос в bd на наличие "имени". Запрос отправляется с формы через $.ajax({.
И все работает прекрасно. За исклбчением браузера Опера. Постоянно один ответ "no". Правдо только в том случае если "name" в bd на русском языке. Остальные браузеры на запрос отвечают коректно в любом случае.
<?php
include_once('conf.php');
if(isset($_GET['name'])){
$name = $_GET['name'];
$select = "SELECT * FROM users WHERE name ='$name'";
$query = mysql_query($select) or die(mysql_error());
$array = mysql_fetch_array($query);
//Выводим сообщение если БД пуста
if(@mysql_num_rows($query) <= 0){echo "no";}
if(mysql_num_rows($query) > 0){echo "yes";}
}

?>




Спустя 2 минуты, 39 секунд (15.12.2011 - 17:02) Семён написал(а):
пригодятся функции urldecode

Спустя 43 минуты, 2 секунды (15.12.2011 - 17:45) strannic написал(а):
Можно по подробнее?

Спустя 5 минут, 22 секунды (15.12.2011 - 17:50) Winston написал(а):
encodeURIComponent нужно использовать при отправке через ajax
var data = encodeURIComponent(data);

Спустя 1 час, 11 минут, 17 секунд (15.12.2011 - 19:02) ИНСИ написал(а):
Цитата
Запрос отправляется с формы через $.ajax({.

Если проблемы именно с русскими именами, значит проблема в кодировке. Кодировка файла должна быть в utf8.

Но также тебе может помочь функция iconv (если у тебя весь сайт в другой кодировке)

Спустя 1 день, 8 часов, 5 минут, 1 секунда (17.12.2011 - 03:07) strannic написал(а):
Пробовал использовать функцию iconv. Опера на опере скрипт заработал коректно, а вот остальные браузеры русский понимать перестали.

Спустя 8 минут, 42 секунды (17.12.2011 - 03:15) Zerstoren написал(а):
AddDefaultCharset мб ?

Спустя 13 минут, 34 секунды (17.12.2011 - 03:29) Игорь_Vasinsky написал(а):
чёт я неуловил - то JS - то iconv

кодировки файлов проверь.

и ТС - это на русском БД - база данных, а на бкржуйском - DB - date base wink.gif

Спустя 1 день, 16 часов, 49 минут (18.12.2011 - 20:18) strannic написал(а):
Я не могу понять следующее!
1) Проверка на наличие Русского слова в базе пороходит не коректно только в опере.
2) Ставлю
$name=iconv("UTF-8","windows-1251",$_GET['name']);
Опера работает коректно, но остальные браузеры увы пишут "слово не найдено".
3) Ставлю
$name=iconv("windows-1251","UTF-8",$_GET['name']);
Все браузеры работают не коректно ("слово не найдено").
Вопрос в какой же кодировке работают браузеры?

Спустя 8 минут, 21 секунда (18.12.2011 - 20:26) Игорь_Vasinsky написал(а):
в той в который у них в настройках.

Спустя 59 минут, 3 секунды (18.12.2011 - 21:25) strannic написал(а):
Кодировку в форме задаю
Content-type: text/html; charset=windows-1251
.
MySQL-кодировка: UTF-8 Unicode (utf8)

таблицы работают
cp1251_general_ci
пробовал ставить
utf8_general_ci 
. Но разницы нет.

Спустя 6 минут, 57 секунд (18.12.2011 - 21:32) Winston написал(а):
strannic
Ну ты и жжошь !
Если ты везде используешь cp1251 то и при соединении с базой напиши
mysql_query('SET NAMES cp1251');

И файлы все перекодируй в win-1251

Спустя 2 часа, 18 минут, 8 секунд (18.12.2011 - 23:51) strannic написал(а):
Вся проблемма в том. Если опера работает коректно то другие браузеры нет.
Работают другие браузеры нормально - то опера наоборот!

Спустя 1 час, 33 минуты, 27 секунд (19.12.2011 - 01:24) strannic написал(а):
Нашел инфу про аналогичный глюк в опере. Но как с этим боротся?

Спустя 1 час, 32 минуты, 9 секунд (19.12.2011 - 02:56) inpost написал(а):
strannic
Это не инфа, просто человек так же не умеет настраивать.
- Кодировка файла
- Кодировка в <head>
- Кодировка в БД
- Кодировка соединения с БД
- Кодировка в .htaccess
- Кодировка через header(); - не забыть, что это должно быть в начале.
- Вручную данные перенабрать.
7 пунктов необходимо выполнить.

А вообще перейти давно пора было за 2 года на ЮТФ.

Спустя 10 минут, 4 секунды (19.12.2011 - 03:06) strannic написал(а):
При переходе на ЮТФ наверняка сайт слетит.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.