Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Apache

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Как быть с русскими текстами в Apache+PHP+MySQL ?
 
 автор: Чайка   (01.02.2006 в 10:19)   письмо автору
 
 

Добрый день Господа! Подскажите как быть с русскими текстами в Apache+PHP+MySQL у меня чертовщину выводит типа Їа®Ја Ёбв Ё & Programist, замечу написано русское и английское слово.

   
 
 автор: cheops   (01.02.2006 в 14:18)   письмо автору
 
   для: Чайка   (01.02.2006 в 10:19)
 

Очень похоже на DOS-кодировку (cp866), посмотрите тему по ссылке http://www.softtime.ru/forum/read.php?id_forum=3&id_theme=354 - это ваш случай? И вообще как данные были помещены в базу данных?

   
 
 автор: Чайка   (01.02.2006 в 16:28)   письмо автору
 
   для: cheops   (01.02.2006 в 14:18)
 

База создавалась так:
mysql> CREATE TABLE authors (
id_author int(6) NOT NULL auto_increment,
name text,
passw text,
email text,
url text,
iсq text,
about text,
photo text,
time text,
last_time text,
themes int(10) default NULL,
statususer int(2) default NULL,
PRIMARY KEY (id_author)
) TYPE=MyISAM;

Данные вводились так:
mysql> INSERT INTO authors VALUES (1, 'Maks', '123', ' maks@mail.ru ',
' www.softtime.ru ', '12345', 'программист и & Programist
', 'Foto ', '10', '10', 0, 0);

Результат такой;
---------------------+-------+------+-----------+--------+------------+
| id_author | name | passw | email | url | iсq | about
| photo | time | last_time | themes | statususer |
+-----------+------+-------+----------------+-------------------+-------+-------
---------------------+-------+------+-----------+--------+------------+
| 1 | Maks | 123 | maks@mail.ru | www.softtime.ru | 12345 | програ
ммист и & Programist | Foto | 10 | 10 | 0 | 0 |
+-----------+------+-------+----------------+-------------------+-------+-------
---------------------+-------+------+-----------+--------+------------+
1 row in set (0.25 sec)



Код РНР для вывода данных такой:

<?php
$dbname 
"forum";
$dblocation "localhost"// Имя сервера
$dbuser "root";          // Имя пользователя
$dbpasswd "";            // Пароль
$dbcnx = @mysql_connect($dblocation,$dbuser,$dbpasswd);
if (!
$dbcnx// Если дескриптор равен 0 соединение не установлено
{
  echo(
"<P>В настоящий момент сервер базы данных не доступен, поэтому 
           корректное отображение страницы невозможно.</P>"
);
  exit();
}
// Код соединения с базой данных
if (!@mysql_select_db($dbname$dbcnx)) 
{
  echo( 
"<P>В настоящий момент база данных не доступна, поэтому
            корректное отображение страницы невозможно.</P>" 
);
  exit();
}
$ath mysql_query("select * from authors;");
if(
$ath)
{
  
$author mysql_fetch_array($ath);
  echo 
"<br>имя = ".$author['name']."<br>";
  echo 
"пароль = ".$author['passw']."<br>";
  echo 
"e-mail = ".$author['email']."<br>";
  echo 
"url = ".$author['url']."<br>";
  echo 
"ICQ = ".$author['icq']."<br>";
  echo 
"about = ".$author['about']."<br>";
  echo 
"photo = ".$author['photo']."<br>";
  echo 
"time = ".$author['time'];
}
else
{
  echo 
"<p><b>Error: ".mysql_error()."</b></p>";
  exit();
}

$ath mysql_query("select * from authors;");
if(
$ath)
{
  
// Определяем таблицу и заголовок
  
echo "<table border=1>";
  echo 
"<tr><td>имя</td><td>пароль</td><td>e-mail</td><td>url</td><td>icq</td><td>профессия</td></tr>";
  
// Так как запрос возвращает несколько строк, применяем цикл
  
while($author mysql_fetch_array($ath))
  {
    echo 
"
<tr>
<td>"
.$author['name']."&nbsp;</td>
<td>"
.$author['passw']."&nbsp </td>
<td>"
.$author['email']."&nbsp;</td>
<td>"
.$author['url']."&nbsp;</td>

<td>"
.$author['iсq']."&nbsp;</td>
<td>"
.$author['about']."&nbsp;</td></tr>";
  }
  echo 
"</table>";
}
else
{
  echo 
"<p><b>Error: ".mysql_error()."</b><p>";
  exit();
}
?>


Результат такой:

имя = Maks
пароль = 123
e-mail = maks@mail.ru 
url = www.softtime.ru 
ICQ = 
about = Їа®Ја Ёбв Ё & Programist
photo = Foto
time = 10 
имя    пароль    e-mail    url    icq    профессия
Maks     123      maks@mail.ru      www.softtime.ru           Їа®Ја Ёбв Ё & Programist 


PS: почему ICQ = не выводит?
С уважением Чайка.

   
 
 автор: cheops   (02.02.2006 в 13:29)   письмо автору
 
   для: Чайка   (01.02.2006 в 16:28)
 

В консоли Windows перед запуском клиента mysql необходимо сменить кодировку при помощи команды
chcp 1251

Подробности в теме по ссылке http://www.softtime.ru/forum/read.php?id_forum=3&id_theme=354

   
 
 автор: Чайка   (02.02.2006 в 15:36)   письмо автору
 
   для: cheops   (02.02.2006 в 13:29)
 

Набрал в командной строке cmd, в вел chcp, консоль выдал: Текущая кодовая страница: 866
Ввел chcp 1251, консоль выдал: Текущая кодовая страница: 1251
Открыл MySQL Command Line Client, в вел

INSERT INTO authors VALUES (1, 'Maks', '123', ' maks@mail.ru ', 
' www.softtime.ru ', 'opa & жопа', 'программист и & Programist
', 'foto & Фото', '10', '10', 10, 10);


результат:


имя = Maks
пароль = 123
e-mail = maks@mail.ru 
url = www.softtime.ru 
ICQ = 
about = Їа®Ја Ёбв Ё & Programist 
photo = foto & ”®в®
time = 10 
имя    пароль    e-mail    url    icq    профессия
Maks     123      maks@mail.ru      www.softtime.ru           Їа®Ја Ёбв Ё & Programist  



PS: как видим результат нулевой, может я что-то не понял?
Где можно скачать phpmysqladmin?

   
 
 автор: cheops   (02.02.2006 в 22:50)   письмо автору
 
   для: Чайка   (02.02.2006 в 15:36)
 

А каким запросом извлекаете данные? Не может это быть старая запись, набранная ещё в cp866?

PS phpMyAdmin можно загрузить с официального сайта этого Web-приложения http://www.phpmyadmin.net/

   
 
 автор: Чайка   (15.02.2006 в 14:36)   письмо автору
 
   для: cheops   (02.02.2006 в 22:50)
 

Спасибо! Ввожу через phpmysqladmin.

   
 
 автор: cheops   (15.02.2006 в 22:47)   письмо автору
 
   для: Чайка   (15.02.2006 в 14:36)
 

А какая кодировка выбирается на главной странице phpMyAdmin?

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования