php mysql utf8

vasilev

Registered
здравейте ,
опитах сто неща за да си записвам кирилица в базата и да я извежда правилно :
Код:
$fullname= htmlspecialchars($_POST["fullname"]);
mysql_query('SET NAMES UTF8');  mysql_query('SET CHARACTER SET UTF8');
header("Content-type: text/html;charset=utf-8");
полето е utf_unicode_ci , и с utf_general_ci , все тая .

излизат не йероглифи (аÑ?да&Nti).
моля за съдействие
 
Трябва да пуснеш тук цялата форма (скрипт) за да може някой да разбере какво не си направил и какво си направил.
 
тъкмо исках да напиша че го подкарах и мислех да трия темата ..
но нека да кажа как е при мен и как стана номера :)

- таблицата и колоните да са utf8_general_ci
- в моя php файл няма никъде header utf8 , mysql_query - SETNAMES UTF8 ..
- $fullname = htmlspecialchars($_POST["fullname"]); - минават през htmlspecialchars .. и това е .
 
Имах същия проблем понеже бях забравил да сложа в head на страницата настройката на charset-а и хич не съм се усетил понеже ползвахExplorer и не ми вадаше маймуницата :)
HTML:
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251"/>
 
Не съм съвсем сигурен дали това е причината, но аз винаги слагам:


$db = mysql_connect($s, $u, $p) or die("Not connected.");
mysql_query('SET NAMES CP1251');
mysql_query('SET CHARACTER CP1251');

и съответно:

<meta http-equiv="Content-Type" content="text/html; charset=windows-1251"/>

Мисля, че ако на двете места сложиш UTF8, също би трябвало да стане, но тогава кирилицата в страницата (текста който не се извежда от БД) трябва да го пишеш с UTF8 кодове.

Пробвай с първия начин.
 

Back
Горе