2015-04-27 1 views
2

Comment insérer des caractères Unicode dans MySQL et les récupérer en utilisant codeigniter ?? Y a-t-il des réglages à faire?Comment insérer des émoticônes dans MySQL en utilisant codeigniter

Ceci est la requête lorsque je l'imprime.

INSERT INTO `reviews` (`description`) VALUES ('😀') 

Mais, c'est économiser comme ????

Voici ce que j'ai fait. CodeIgniter database.php

$db['default']['char_set'] = 'utf8mb4'; 
$db['default']['dbcollat'] = 'utf8mb4_unicode_ci'; 

Merci pour l'aide ...

+0

type Collation de la colonne de commentaires vous utiliser dans MySQL? –

+0

reviews (table) classement: utf8mb4_unicode_ci, la description (field) collation est également définie sur utf8mb4_unicode_ci –

+0

vous utilisez un éditeur comme ckeditor ou autre? –

Répondre

1

Il fonctionne très bien pour moi quand je le tester (éditeur est Sublime Text).

Créer table MySQL:

CREATE TABLE `reviews` (
    `id` int(11) unsigned NOT NULL AUTO_INCREMENT, 
    `description` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL, 
    PRIMARY KEY (`id`) 
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; 

Exécuter un insert dans CI:

$this->db->insert('reviews', array('description' => '😀')); 

Grab retour nos données:

$result = $this->db->get('reviews'); 

Sortie notre résultat:

echo '<pre>'; 
print_r($result->row()); 
echo '</pre>'; 

Notre résultat:

stdClass Object 
(
    [id] => 1 
    [description] => 😀 
) 
+0

Merci, cela fonctionne, j'étais juste inquiet au sujet des données cryptées sauvées dans la base de données ... il se retente bien –

+0

Heureux que cela fonctionne. S'il vous plaît, n'oubliez pas de voter si vous avez trouvé ma réponse utile. – olimortimer