LinuxForum.Fans
Тема

Проблема с кодировкой

Автор: tania88-88 61 сообщений 9675 просмотров
#59430

tania88-88, так это он все буквы русские в крякозябры заваливает? Это важный момент. Те, которые составляют страничку (html) тоже стали такими? Или так выводится ТОЛЬКО результат выборки из бд?

#59433
zerg написал:
tania88-88, так это он все буквы русские в крякозябры заваливает? Это важный момент. Те, которые составляют страничку (html) тоже стали такими? Или так выводится ТОЛЬКО результат выборки из бд?

русские буквы которые составляют страничку html выводятся по русски - все в норме
а вот результат выборки из бд - крякозябры

#59434

В скрипте прописана кодировка сравнения для соединения с бд?

#59436
zerg написал:
В скрипте прописана кодировка сравнения для соединения с бд?

Сопоставление соединения с MySQL: cp1251_general_cs

#59438

tania88-88, в коде скрипта, а не то, как бд настроено.

Кто скрипт писал?

#59440
tania88-88 написал:
mycetophylax!
при наборе
mysql -u root -p
выскочила такая ошибка
ERROR 1045 (28000): Access denied for user 'root-p'@'localhost' (using password: NO)

А так:

text
mysql -u root

---
Я все-таки уверен, что проблема с кодировками в БД, а не в скрипте.
P.S. А пароль-то на рута надо поставить! А также удалить анонимных юзеров.

#59441

А ещё хотелось бы узнать, что за скрипт такой...

#59443

я скрипт писала
в коде скрипта пыталась вот что сделать
mysql_query('SET character_set_database = cp1251');
mysql_query('SET NAMES cp1251');

но все равно не работало.

и я теперь в замешательстве :(

#59444

mycetophylax, а я в таких случаях считаю, что слишком много неизвестных в задаче. Т.к. если скрипт сам с нуля пишется в пустую базу, то проблем с кодировкой, зависящих от базы, быть не должно. По вполне понятным причинам.

В таких случаях обычно клиент договаривается с кем-нибудь и к нему едут разбираться. Просто libastral не работает. Подключится не могу :(

#59445

tania88-88, расскажите про скрипт и как ставится он.

#59448


я скрипт писала
в коде скрипта пыталась вот что сделать
mysql_query('SET character_set_database = cp1251');
mysql_query('SET NAMES cp1251');
но все равно не работало.
и я теперь в замешательстве

Кроме это есть еще:

text

character_set_client
character_set_connection
character_set_filesystem
character_set_results
character_set_server
character_set_system

И вот в этом-то вся проблема и заключается, как мне кажется.

zerg написал:
mycetophylax, а я в таких случаях считаю, что слишком много неизвестных в задаче. Т.к. если скрипт сам с нуля пишется в пустую базу, то проблем с кодировкой, зависящих от базы, быть не должно. По вполне понятным причинам.

В таких случаях обычно клиент договаривается с кем-нибудь и к нему едут разбираться. Просто libastral не работает. Подключится не могу :(

Ладно. Я пока в сторонке постою, понаблюдаю :D . Но мнение свое не изменю, не убедил wink .
С PHP не работал, опыта нет.

#59473
zerg написал:
mycetophylax, а я в таких случаях считаю, что слишком много неизвестных в задаче. Т.к. если скрипт сам с нуля пишется в пустую базу, то проблем с кодировкой, зависящих от базы, быть не должно. По вполне понятным причинам.

В таких случаях обычно клиент договаривается с кем-нибудь и к нему едут разбираться. Просто libastral не работает. Подключится не могу sad

почему нельзя по ssh подключится?

мда...

ладно.

*) в mysql (это команда такая) есть вообще-то 4 кодировки, причём все они никак не повинны в кракозябрах.
*) сами сайты тоже работают в кодировке какой-то, она там в начале странички написана
*) кодировка может побиться как при занесеннии в базу, так и при выборке из неё - если нет этих участков скрипта (в смысле - здесь), то никто ничего и не поймёт.

tania88-88,

1) вы забыли пробел, а юзера 'root-p' у вас нет, после t нужен пробел.
2) расскажите, в какой кодировке отображается сайт (смотрите в браузере), в какой кодировке и чем делали дамп, как этот дамп заносили, что пишет mysql на команду \s, ну и что про кодировки сказано в конфигурационных файлах?

#59710
drBatty написал:
почему нельзя по ssh подключится?

Патому что чтобы давать ssh, надо доверять... За приезжим на место следить проще wink

#59711
zerg написал:
tania88-88, расскажите про скрипт и как ставится он.

вот мой скрипт который выводит бд

<?php
//����� ��
$db = mysql_connect('localhost','root','electromera');
mysql_select_db('gostu', $db);


$gostu = mysql_query ("SELECT * FROM gostu");
$db_gostu = mysql_fetch_array($gostu);

echo "<table border = 1 width='90%' align = 'center'>";
echo "<tr align='center'><td width = '30%'>�����������</td>
<td width = '30%'>������������</td>
<td width = '30%'>������� ����</td></tr>";
echo "</table>";
echo "<table border = 1 width='90%' align = 'center'>";
$i=0;
do
{


echo "<tr align='center'><td width = '30%'>".$db_gostu['gost']."</td>
<td width = '30%'>".$db_gostu['name']."</td>
<td width = '30%'>".$db_gostu['fail']."</td></tr>";
$i++;


}

while ($db_gostu = mysql_fetch_array($gostu));
echo "</table>";


?>

жду ответ

#59713

Это что?

�����������
#59714
mycetophylax написал:
Это что?

�����������

это русские буквы только в таком виде

#59717
tania88-88 написал:
�����������

это русские буквы только в таком виде

А почему так?

#59718
mycetophylax написал:
[quote=tania88-88]
�����������

это русские буквы только в таком виде

А почему так?[/quote]

чтобы скопировать скрипт из файла index.php и показать его на форуме здесь я его открыла а там русские буквы вот так представляются
но когда в браузере открываю эти русские буквы при смене в самом браузере кодировки представляются как русские буквы а данные которые выводит бд представляются в виде ??????????????

#59721

кодировка в самом браузере UTF-8
и при входе на страницу вся информация представляется ����������� но как только я в самом браузере меняю кодировку на windows-1251 русские буквы которые в файле index.php по русски - они выводятся по-русски
но данные из бд представляются все равно ??????????? smile smile smile

Жду ответа

#59727

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

Войдите или зарегистрируйтесь, чтобы ответить.