|
На страницу « 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25 » |
|
|
|
|
Возраст: 38 C нами с 25.01.2005 Репутация: 133
|
|
Язык программирования, разработанный специально для динамической генерации веб-страниц. Намного превосходит возможности SSI. Имеет функции работы с базами данных (MySQL), создания графических файлов Jpeg и PNG (библиотека GD), обработки XML-документов и многие другие.
|
|
|
|
|
|
|
|
Возраст: 45 C нами с 27.03.2005 Репутация: 205.3
|
|
ага, кодировка не совпадает у браузера (или HTTP-заголовков) со скриптом (или базой данных). Если скрипт и БД используют кодировку win1251 — попробуйте добавить в заголовки HTML (секция <head>) строчку
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251"> |
|
_____________________________ Уточняйте значение слов, и вы избавите человечество от половины своих заблуждений. Рене Декарт
|
|
|
|
|
|
|
Возраст: 34 C нами с 22.10.2006 Репутация: 107.9
|
|
М...А как изменить в самой базе данных кодировку? Точнее, именно для этой базы данных,которая используется на данный момент?
Платформа - denwer.
Добавлено спустя 2 минуты 23 секунды:
И к тому же,предыдущий сценарий выполнялся без осечек...
|
_____________________________ Those who know, don`t speak.
Those who speak, don`t know.
|
|
|
|
|
|
|
Возраст: 45 C нами с 27.03.2005 Репутация: 205.3
|
|
rory2, БД тут, скорее всего, не при чём, это я погорячился (судя по скрипту, страдают статические текстовые строки). Дэнвер, вроде, заточен под win1251 и заголовки там, скорее всего, выводятся правильные (если сам скрипт не выводит собственных). Возможно, скрипт набран не в этой кодировке? Например, раньше в FAR'е, кажется, по-умолчанию текстовые файлы создавались в DOS'овской кодировке. Попробуйте для начала открыть эту страницу в браузере и вручную подобрать в браузере кодировку. Тогда, по крайней мере, будет понятно, в какой кодировке фактически выводится текст.
|
_____________________________ Уточняйте значение слов, и вы избавите человечество от половины своих заблуждений. Рене Декарт
|
|
|
|
|
|
|
Возраст: 44 C нами с 05.04.2005 Репутация: 121.2
|
|
Олег, Название в заголовке таблицы это UTF-8
Добавлено спустя 4 минуты 10 секунд:
rory2 писал(а): |
М...А как изменить в самой базе данных кодировку? Точнее, именно для этой базы данных,которая используется на данный момент?
Платформа - denwer.
|
нужно менять не кодировку базы, а кодировку ввода-вывода в базу/из базы:
<?php
mysql_query("set names 'cp1251'");
. . .
?> |
|
_____________________________ IRC WeNet #programming
jid: seb2000@jabber.ru
|
|
|
|
|
|
|
Возраст: 45 C нами с 27.03.2005 Репутация: 205.3
|
|
seb писал(а): |
Олег, Название в заголовке таблицы это UTF-8
|
seb, точно, UTF-8, отображаемый как 1251.
rory2, значит нужно проследить, чтобы текст скрипта сохранялся в кодировке win-1251, а не в юникоде.
|
_____________________________ Уточняйте значение слов, и вы избавите человечество от половины своих заблуждений. Рене Декарт
|
|
|
|
|
|
|
Возраст: 45 C нами с 28.07.2005 Репутация: 135.1
|
|
seb, Олег, Если не танцевать с бубном вокруг Mysql-я, то по умолчанию там будет 1251. (я имею в виду денвер)
Хотя можно, при создании базы, заставить работать в UTF-8 но данные все-равно будут выводиться в виндовой кодировке.
по этому надо просто указать в хэддере нормальный чарсет и посмотреть браузер, может там включен утф-8, и автоопределение отрублено.
вариант 2. еще такие косяки могли получиться, если при вёрстке пользовались дримвивером, а в настройках указали базовую кодировку УТФ
|
|
|
|
|
|
|
|
Возраст: 34 C нами с 22.10.2006 Репутация: 107.9
|
|
Цитата: |
mysql_query("set names 'cp1251'");
|
Ставил эту строчку и в config.php и в исполняемый файл,в данном случае 4.php.
Не получается Наоборот,добавилось 2 ошибки:
Цитата: |
Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in L:\home\localhost\www\4.php on line 2
Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in L:\home\localhost\www\4.php on line 2
|
А names - names аргумент функции?
Т.е нужно ставить свой из БД?
Так в браузере стоит кодировка win-1251.
Если стоит utf-8,то скрипт,работает,наполовину См.рисунок
Запутался
|
_____________________________ Those who know, don`t speak.
Those who speak, don`t know.
1y.JPG - Просмотров: 31
|
|
|
|
|
|
|
Возраст: 45 C нами с 27.03.2005 Репутация: 205.3
|
|
rory2 писал(а): |
Запутался
|
Резюмирую. Забудьте (пока?) про БД. Проблема в том, что текст скрипта сохранён в кодировке UTF-8. Откройте его в текстовом редакторе и сохраните, указав кодировку CP1251 (win1251). Всё будет хорошо.
|
_____________________________ Уточняйте значение слов, и вы избавите человечество от половины своих заблуждений. Рене Декарт
|
|
|
|
|
|
|
Возраст: 34 C нами с 22.10.2006 Репутация: 107.9
|
|
Олег, Сделал,но вот абракадабра,которая справа,осталась !
Полез в .htaccess. Поставил там AddDefaultCharset WINDOWS-1251.
И все равно,абракадабра,которая справа,осталась
Странно. Может,когда делал БД, после create table (...) type=MyISAM DEFAULT CHARSET, вот она ли подефолту не UTF-8 идет?
|
_____________________________ Those who know, don`t speak.
Those who speak, don`t know.
|
|
|
|
|
|
|
Возраст: 45 C нами с 27.03.2005 Репутация: 205.3
|
|
rory2, во-первых, хорошо, что заголовки стали читаемыми, это уже половина дела. Во-вторых, не очень понял, где это «справа», но подозреваю, что вот это уже из БД. То, о чём seb писал выше («set names»), должно идти *после* успешного соединения с БД (mysql_connect). Поищите, где у Вас производится соединение и вставьте сразу после него, должно сработать.
Добавлено спустя 44 секунды:
Правда есть ещё вариант, что MySQL сама не знает, в какой кодировке в ней лежат данные… ну тогда, боюсь, их просто нужно перезалить.
|
_____________________________ Уточняйте значение слов, и вы избавите человечество от половины своих заблуждений. Рене Декарт
|
|
|
|
|
|
|
Возраст: 34 C нами с 22.10.2006 Репутация: 107.9
|
|
Олег, Не совсем так объяснил
Я немного не понял,а получается для mysql нужно писать какое то исключение,или что? Раз он не интерпретирует русский
Но mysql говорит обратное,см.рисунок :
|
_____________________________ Those who know, don`t speak.
Those who speak, don`t know.
1x.JPG - Просмотров: 36
|
|
|
|
|
|
|
Возраст: 45 C нами с 27.03.2005 Репутация: 205.3
|
|
rory2, в консоли под виндой используется кодировка cp866 (унаследованная от DOS'а). Эксперимент показывает, что «”®а㬻 — это как раз слово «Форум», записанное в 866-й кодировке, а отображаемое в 1251. Если MySQL «в курсе», что данные хранятся в cp866 — она может автоматически при выдаче результатов конвертировать в нужную кодировку (для этого как раз после установления соединения нужно задать требуемую кодировку выдачи, как говорилось выше), если нет — значит ей либо нужно «объяснить», какая используется кодировка (плюс к вышесказанному), либо (и это более правильно) хранить данные в той кодировке, в которой их предполагается использовать, т.е. cp1251. Подозреваю, что у Вас возникают эти проблемы оттого, что Вы пользуетесь для прямого доступа к БД консольным приложением. Воспользуйтесь графическим фронт-эндом, например, вот этим: http://www.heidisql.com/ — и проблем сразу станет меньше.
|
_____________________________ Уточняйте значение слов, и вы избавите человечество от половины своих заблуждений. Рене Декарт
|
|
|
|
|
|
|
C нами с 06.07.2008 Репутация: 42.2
|
|
в скрипте после коннекта нужно прописывать две строчки, если не ошибаюсь.
mysql_query("SET CHARACTER SET utf8");
mysql_query("SET NAMES utf8");
rory2, советую использовать http://www.phpmyadmin.net/home_page/downloads.php
и создать базу данных с кодировкой utf8
|
Безымянный.JPG - Просмотров: 20
|
|
|
|
|
|
|
Возраст: 45 C нами с 27.03.2005 Репутация: 205.3
|
|
IDMAN, phpMyAdmin — хорошая штука, но его трудно рекомендовать именно в аспекте путаницы с кодировкой, т.к. он сам отображается в браузере, в котором может оказаться кривая кодировка. Кроме того, всё-таки в плане удобства использования при таких сложных задачах веб-приложение не может тягаться с «толстым» клиентом, к сожалению…
|
_____________________________ Уточняйте значение слов, и вы избавите человечество от половины своих заблуждений. Рене Декарт
|
|
|
|
|
|
|
Возраст: 34 C нами с 22.10.2006 Репутация: 107.9
|
|
IDMAN, Спасибо,но я решил действовать как посоветовал Олег.
http://www.heidisql.com/ И в правду очень полезная штука,ну-у,по крайней мере,вопросов стало,гораздо меньше
Можно даже так сказать,что эта программка заменила,на некоторое время phpmyadmin.
|
_____________________________ Those who know, don`t speak.
Those who speak, don`t know.
|
|
|
|
|
|
|
На страницу « 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25 »
|
|