Когда я пытаюсь вставить русский текст в базу данных MySQL, он вставляется следующим образом:
г ???????????? ?? ????????
Ріс °рїр ° ріс ‹рї р ° с‹ рір ° рї
Итак, у меня есть две страницы: registration.php и addUser.php. В каждом из них
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
База данных состоит из 11 таблиц, каждая таблица имеет параметры сортировки: utf8_general_ci, тип: MyISAM. Каждое поле в каждой таблице имеет параметры сортировки: utf8_general_ci.
Когда я пишу в базу данных напрямую в phpMyAdmin, а затем показываю эти данные на веб-странице. На английском и русском - все ок.
Но когда я заполняю свою форму личными данными на registration.php, а затем собираюсь добавить addUser.php - все русские символы отображаются так же, как я написал выше - на странице и в базе данных тоже.
function AddNewUser($Name, $Surname, $FatherName, $Email, $Password, $Phone, $DegreeID, $RankID,
$Organization, $Department, $Country, $City, $Address, $Job)
{
//fetch data from database for dropdown lists
//connect to db or die)
$db = mysql_connect($GLOBALS["gl_kussdbName"], $GLOBALS["gl_kussUserName"], $GLOBALS["gl_kussPassword"] ) or die ("Unable to connect");
//to prevenr ????? symbols in unicode - utf-8 coding
mysql_query("SET NAMES 'UTF8'");
//select database
mysql_select_db($GLOBALS["gl_kussDatabase"], $db);
$sql = "INSERT INTO UserDetails (
UserFirstName,
UserLastName,
UserFatherName,
UserEmail,
UserPassword,
UserPhone,
UserAcadDegreeID,
UserAcadRankID,
UserOrganization,
UserDepartment,
UserCountry,
UserCity,
UserAddress,
UserPosition)
VALUES(
'".$Name."',
'".$Surname."',
'".$FatherName."',
'".$Email."',
'".$Password."',
'".$Phone."',
'".$DegreeID."',
'".$RankID."',
'".$Organization."',
'".$Department."',
'".$Country."',
'".$City."',
'".$Address."',
'".$Job."'
);";
//execute SQL-query
$result = mysql_query($sql, $db);
if (!$result)
{
die('Invalid query: ' . mysql_error());
}
//close database = very inportant
mysql_close($db);
}
?>
Там также такая информация в phpMyAdmin:
auto increment increment 1
auto increment offset 1
autocommit ON
automatic sp privileges ON
back log 50
basedir \usr\local\mysql-5.1\
big tables OFF
binlog cache size 32,768
binlog format STATEMENT
bulk insert buffer size 8,388,608
character set client utf8
(Global value) cp1251
character set connection utf8
(Global value) cp1251
character set database cp1251
character set filesystem binary
character set results utf8
(Global value) cp1251
character set server cp1251
character set system utf8
character sets dir \usr\local\mysql-5.1\share\charsets\
collation connection utf8_general_ci
(Global value) cp1251_general_ci
collation database cp1251_general_ci
collation server cp1251_general_ci
completion type 0
concurrent insert 1
Так что мне нужно правильно показать, сохранить и выбрать русский текст из базы данных. Thanx!
время ожидания подключения 10
datadir \ usr \ local \ mysql-5.1 \ data \