<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Форум PHP-MyAdmin.RU &mdash; Проблема с кодировкой. Перепробовал всё :(]]></title>
	<link rel="self" href="https://forum.php-myadmin.ru/extern.php?action=feed&amp;tid=1313&amp;type=atom" />
	<updated>2009-07-12T08:53:48Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.php-myadmin.ru/viewtopic.php?id=1313</id>
		<entry>
			<title type="html"><![CDATA[Re: Проблема с кодировкой. Перепробовал всё :(]]></title>
			<link rel="alternate" href="https://forum.php-myadmin.ru/viewtopic.php?pid=8692#p8692" />
			<content type="html"><![CDATA[<p><strong>Revares</strong><br />Спасибо, что отписали о решении проблемы.</p><p>Только одно замечание: при просмотре кодировки соединения следует смотреть ее глобальное значение, которое и использует MySQL сервер при работе со скриптами, если эта кодировка не указана прямо через SET NAMES...<br /></p><div class="codebox"><pre><code>SHOW GLOBAL VARIABLES LIKE &#039;char%&#039;;</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Hanut]]></name>
				<uri>https://forum.php-myadmin.ru/profile.php?id=181</uri>
			</author>
			<updated>2009-07-12T08:53:48Z</updated>
			<id>https://forum.php-myadmin.ru/viewtopic.php?pid=8692#p8692</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Проблема с кодировкой. Перепробовал всё :(]]></title>
			<link rel="alternate" href="https://forum.php-myadmin.ru/viewtopic.php?pid=8690#p8690" />
			<content type="html"><![CDATA[<p>Дело было вот в чём, входные данные перед записью обрабатывались функцией htmlentities(), вот именно из за нее и возникали эти косяки.</p>]]></content>
			<author>
				<name><![CDATA[Revares]]></name>
				<uri>https://forum.php-myadmin.ru/profile.php?id=2123</uri>
			</author>
			<updated>2009-07-12T07:26:55Z</updated>
			<id>https://forum.php-myadmin.ru/viewtopic.php?pid=8690#p8690</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Проблема с кодировкой. Перепробовал всё :(]]></title>
			<link rel="alternate" href="https://forum.php-myadmin.ru/viewtopic.php?pid=8688#p8688" />
			<content type="html"><![CDATA[<p>Использую PDO +&nbsp; PHP&nbsp; версии 5.2.1, MySQL версии 5.0.45-community-nt:</p><p>Вот как создаю БД и таблицу:</p><div class="quotebox"><blockquote><p>CREATE DATABASE `out_portal` DEFAULT CHARACTER SET cp1251 COLLATE cp1251_general_ci;</p><br /><p>CREATE TABLE `news` (<br />&nbsp; `id` int(11) NOT NULL auto_increment,<br />&nbsp; `user_id` int(11) NOT NULL,<br />&nbsp; `name` varchar(256) NOT NULL,<br />&nbsp; `created` varchar(10) NOT NULL,<br />&nbsp; `title` varchar(256) character set cp1251 NOT NULL,<br />&nbsp; `msg` text&nbsp; character set cp1251 NOT NULL,<br />&nbsp; `timestamp` varchar(256) NOT NULL,<br />&nbsp; PRIMARY KEY&nbsp; (`id`)<br />) ENGINE=MyISAM&nbsp; DEFAULT CHARSET=cp1251 AUTO_INCREMENT=1 ;</p></blockquote></div><p>Код PHP:</p><div class="quotebox"><blockquote><p>$encoding=&#039;cp1251&#039;;</p><p>&nbsp; &nbsp; &nbsp; // ...................................//</p><p>&nbsp; &nbsp; &nbsp; &nbsp; Header(&quot;Content-type:text/html;charset=windows-1251&quot;);</p><p>&nbsp; &nbsp; &nbsp;// .................................//</p><p>&nbsp; &nbsp;<br />&nbsp; &nbsp; try {<br />&nbsp; &nbsp; &nbsp; &nbsp; $dsn = &quot;mysql:host=$host;port=$port;dbname=$db;charset=$encoding;&quot;;<br />&nbsp; &nbsp; &nbsp; &nbsp; $dbh =&nbsp; new PDO($dsn, $user, $pass, array(PDO::MYSQL_ATTR_INIT_COMMAND =&gt; &quot;SET NAMES $encoding&quot;));<br />&nbsp; &nbsp; &nbsp; &nbsp; $dbh-&gt;setAttribute(PDO::ATTR_EMULATE_PREPARES, TRUE);<br />&nbsp; &nbsp; &nbsp; &nbsp; $dbh-&gt;setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);<br />&nbsp; &nbsp; &nbsp; &nbsp; $dbh-&gt;exec(&quot;SET NAMES $encoding&quot;);<br />&nbsp; &nbsp; &nbsp; &nbsp; $dbh-&gt;exec(&quot;SET CHARACTER SET $encoding&quot;);<br />&nbsp; &nbsp; } catch (PDOException $e) {<br />&nbsp; &nbsp; &nbsp; &nbsp; echo &#039;Ошибка доступа к базе данных: &#039;.$e-&gt;getMessage().&#039;&lt;br&gt;&#039;;<br />&nbsp; &nbsp; &nbsp; &nbsp; echo &#039;Проверьте настройки и попытайтесь заново.&#039;;<br />&nbsp; &nbsp; &nbsp; &nbsp; exit;<br />&nbsp; &nbsp; }<br />&nbsp; &nbsp;// Как видите все возможные и невозможные варианты решение я перебрал <img src="https://forum.php-myadmin.ru/img/smilies/sad.png" width="15" height="15" alt="sad" /></p></blockquote></div><p>Мета-тэг тоже присутствует:</p><div class="quotebox"><blockquote><p>&lt;META http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=windows-1251&quot; /&gt;</p></blockquote></div><p>Проблема вроде стандартная, вставляются данные в таблицу, затем идёт корявое отображение русских символов, аля ?????????, <br />как я понимаю это кодировка cp1252 (она же latin1). Но&nbsp; вот понять почему данные после всех этих шаманств выводятся по прежнему в <br />latin1 я никак не способен. </p><p>P.S.</p><div class="quotebox"><blockquote><p>mysql&gt; show variables like &#039;char%&#039;;<br />+--------------------------+----------------------------------+<br />| Variable_name&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | Value&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; |<br />+--------------------------+----------------------------------+<br />| character_set_client&nbsp; &nbsp; &nbsp;| cp1251&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;|<br />| character_set_connection | cp1251&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;|<br />| character_set_database&nbsp; &nbsp;| cp1251&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;|<br />| character_set_filesystem | binary&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;|<br />| character_set_results&nbsp; &nbsp; | cp1251&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;|<br />| character_set_server&nbsp; &nbsp; &nbsp;| cp1251&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;|<br />| character_set_system&nbsp; &nbsp; &nbsp;| utf8&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;|<br />| character_sets_dir&nbsp; &nbsp; &nbsp; &nbsp;| /usr/local/share/mysql/charsets/ |<br />+--------------------------+----------------------------------+</p></blockquote></div><p>P.P.S.</p><p>Причем если загонять данные через phpMyAdmin, то всё работает как надо :-/<br />=&gt; Решение проблемы есть, но вот каким образом?!</p>]]></content>
			<author>
				<name><![CDATA[Revares]]></name>
				<uri>https://forum.php-myadmin.ru/profile.php?id=2123</uri>
			</author>
			<updated>2009-07-12T05:41:12Z</updated>
			<id>https://forum.php-myadmin.ru/viewtopic.php?pid=8688#p8688</id>
		</entry>
</feed>
