Quand j'essaye d'insérer le texte russe dans la base de données MySQL il l'insère comme: г ???????????? ?? ????????
Рісѓрїр ° ріс <рї р ° с <рір ° рїne peut pas insérer le texte russe dans la base de données mysql
Donc, j'ai deux pages: registration.php et addUser.php. Dans chacun d'eux
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
base de données se composent de 11 tables, chaque table a la collation: utf8_general_ci, tapez: MyISAM. Chaque champ de chaque table a Collation: utf8_general_ci.
Lorsque j'écris directement dans la base de données dans phpMyAdmin et que je montre ces données à la page Web. En anglais et en russe - tout est OK.
Mais quand je suis plein mon formulaire avec des données personnelles sur registration.php et puis aller à addUser.php - tous les caractères russes affichés comme j'ai écrit haut - sur la page et dans la base de données aussi.
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);
}
?>
Là aussi ces informations dans 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
donc je dois montrer correctement, enregistrer et sélectionner le texte russe de la base de données. Merci! connexion timeout 10 datadir \ usr \ local \ mysql-5.1 \ data \
http://developer.loftdigital.com/blog/php-utf-8-cheatsheet – BalusC
Thanx, BalusC !! Votre réponse était le meilleur que ça aide !!! – yozhik