[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Помогите настроить кодировку скрипта подсказки
GET
Здравствуйте, подскажите кто знает, очень надо:

Решил прикрутить к своему php скрипту подсказку для текстового поля на Ява Скрипте. Нашел простой и нужный скриптик в сети, который вытаскивает подсказки из таблицы БД все как мне надо. Вот сам скрипт:

index.html


<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta
http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>
Пример автозаполнения формы</title>
<script
type="text/javascript" src="http://jqueryjs.googlecode.com/files/jquery-1.3.2.min.js"></script>
<script
type="text/javascript">

function
hide() {
setTimeout("$('#suggestions').hide()", 200);
} // hide

function lookup(inputString) {
if(inputString.length == 0) {
// если длина нулевая то скрываем блок выбор
hide();
} else {
$.post("cities.php", {q: ""+inputString+""}, function(data){
if(data.length > 0) {
$('#suggestions').show();
$('#autoSuggestionsList').html(data);
}
}
);
}
}
// lookup

function fill(thisValue) {
$('#inputString').val(thisValue);
hide();
} // fill

</script>
<style
type="text/css">

.suggestionsBox {
position: relative;
margin: 10px 0px 0px 0px;
left: 30px;
width: 200px;
background-color: #212427;
-moz-border-radius: 7px;
-webkit-border-radius: 7px;
border: 2px solid #000;
color: #fff;
}

.suggestionList {
margin: 0px;
padding: 0px;
}

.suggestionList li {
margin: 0px 0px 3px 0px;
padding: 3px;
cursor: pointer;
}

.suggestionList li:hover {
background-color: #659CD8;
}
</style>
</head>
<body>

<div>
<div>

Введите название города:<br />
<input
size="30" id="inputString" onkeyup="lookup(this.value);" type="text" autocomplete="off" onblur="hide();" />
</div>
<div
class="suggestionsBox" id="suggestions" style="display: none;">

<div
class="suggestionList" id="autoSuggestionsList">
</div>

</div>
</div>

</body>
</html>



Вот на php коннектор к таблице городов:

cities.php

<?php

$db = new mysqli('localhost', 'root', 'root', 'test');

if

(!$db) {
echo 'ERROR: Could not connect to the database.';


die();
}

$db->set_charset("utf8");
// В запросе есть ли переменная q
if (isset($_POST['q'])) {
// не забываем о безопасности
$q =

$db->real_escape_string($_POST['q']);
// больше ли нуля?
if

(strlen($q) > 0) {
// Для примера используется запрос вида

LIKE '$q%'

if ($query = $db->query( "SELECT name FROM

cities WHERE name LIKE '
$q%' LIMIT 10")) {



while ($result = $query->fetch_object()) {


// для форамтирования результата используется список

<li>
echo ("<li

onclick=
\"fill('$result->name');\">$result->name</li>");


}
$query->close();

} else {
echo 'ERROR: ' .

$db->error;
}
}
}


$db->close();
?>


Вот дамп таблицы cities:

-- MySQL dump 10.11
--
-- Host: localhost Database: test
-- ------------------------------------------------------
-- Server version 5.0.67-0ubuntu6-log

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
/*!40103 SET TIME_ZONE='+00:00' */;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;

--
-- Table structure for table `cities`
--

DROP TABLE IF EXISTS `cities`;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
CREATE TABLE `cities` (
`id` int(11) NOT NULL auto_increment,
`name` varchar(255) default NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=560 DEFAULT CHARSET=utf8;
SET character_set_client = @saved_cs_client;

--
-- Dumping data for table `cities`
--

LOCK TABLES `cities` WRITE;
/*!40000 ALTER TABLE `cities` DISABLE KEYS */;
INSERT INTO `cities` VALUES (281,'Москва'),(282,'Санкт-Петербург'),(558,'Мегион'),(559,'Краснообск');
/*!40000 ALTER TABLE `cities` ENABLE KEYS */;
UNLOCK TABLES;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;

/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;

-- Dump completed on 2009-03-11 22:47:45




Проблема такая: не могу изменить кодировку с UTF-8 на свою cp1251 для того чтобы этот скрипт прикрутить к своему сйату, у меня на ней и сами скрипты и вся БД.

Вот этот блок из предложенных 2 скриптов и дампа, рабочий. Довольно просто его подцепить и проверить. Единственное, что кириллица зашифрована абракадаброй т.е. заголовок страницы или надпись"Введите город:", но подсказки всплывают правильные и читаемые, т.е Москва, Минск и т.д.

Вместо таблицы городов настроил скрипт коннектора на свою БД для того чтобы юзать свою таблицу, в ней вместо городов модели машин и все!!! Вместо всплывающих слов с моделями...всплывает только черный фон, с белыми маркерами - без букв, помогите настроить очень прошу вот дамп моей таблицы:


CREATE TABLE `model_inauto` (
`id_mod` int(5) NOT NULL auto_increment,
`kats_id` int(5) NOT NULL,
`model` text,
PRIMARY KEY (`id_mod`)
)
ENGINE=MyISAM AUTO_INCREMENT=611 DEFAULT CHARSET=cp1251 AUTO_INCREMENT=611 ;

--
-- Дамп данных таблицы `model_inauto`
--

INSERT INTO `model_inauto` VALUES (1, 29, 'Altis');
INSERT INTO `model_inauto` VALUES (2, 29, 'Applause');
INSERT INTO `model_inauto` VALUES (3, 29, 'Atrai');
INSERT INTO `model_inauto` VALUES (4, 29, 'Atrai Wagon');
INSERT INTO `model_inauto` VALUES (5, 29, 'Atrai7');
INSERT INTO `model_inauto` VALUES (6, 29, 'Be-Go');
INSERT INTO `model_inauto` VALUES (7, 29, 'Boon');






Спустя 1 час, 7 минут, 17 секунд (8.07.2010 - 13:54) inpost написал(а):
Единственный мудрый совет - меняй кодировку на ЮТФ-8 навсегда!

Спустя 33 минуты, 3 секунды (8.07.2010 - 14:27) ABC написал(а):
А чем она лучше?

Спустя 2 часа, 59 минут, 23 секунды (8.07.2010 - 17:27) Гость_Александр написал(а):
Цитата
А чем она лучше?

Мало того что ты спрашиваешь "НЕЧТО", что мусолилось на данном форуме 1000 раз(в поиске забанили?), так и делаешь это еще после 4-х месяцев "разбирания" blink.gif в PHP. Выставил хламыду кода тупо перекатав где то - и что у него не так - расскажите ребенку ...
Не думал все таки заняться каким то своим делом, а не лезть в программисты , когда нет даже минимума способностей ? wink.gif

Спустя 7 минут, 22 секунды (8.07.2010 - 17:34) ABC написал(а):
Гость_Александр, откровенно даже ни капли не зацепило smile.gif напишите еще.

Спустя 13 минут, 27 секунд (8.07.2010 - 17:48) Гость_Александр написал(а):
Цитата
Гость_Александр, откровенно даже ни капли не зацепило напишите еще.

Это была не зацепка, а житейский совет - открой ясны очи О ЧАЙНИК - не во все двери можно зайти ... программирование - не для всех. Если так по мелочам тупишь, то что с более сложным будешь делать? На форумах слезы лить?

Спустя 4 минуты, 26 секунд (8.07.2010 - 17:52) ABC написал(а):
Гость_Александр, ещё!!!

Спустя 3 минуты, 14 секунд (8.07.2010 - 17:55) ABC написал(а):
Нашел способ если вручную перекодировать типа:

$unicode=array(chr(208)->(129));
$win=array(chr(192)->(168));
$result->model= str_replace($unicode,$win,$result->model);

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

iconv('utf-8', 'windows-1251',$result->model); - почему то не работает!!!

Спустя 4 минуты, 57 секунд (8.07.2010 - 18:00) inpost написал(а):
После твоих подколок с анонимами, у меня пропало желание помогать тебе...
Ищи ответ сам

Спустя 3 минуты, 18 секунд (8.07.2010 - 18:03) ABC написал(а):
inpost, smile.gif вот это круто! Я никого не покалывал, айпишник или mac пробить не можешь?

У меня пока в поряде все с головой, чтоб самим с собой беседовать. smile.gif

Спустя 4 минуты, 40 секунд (8.07.2010 - 18:08) Gabriel написал(а):
а может оба успокоитесь?

Спустя 4 минуты, 33 секунды (8.07.2010 - 18:13) ABC написал(а):
Да все в порядке smile.gif


_____________
Не тот велик, кто не падал, а тот кто падал и поднимался.
Быстрый ответ:

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