PL
sugestão alteração em TConnection.php
não sei se aqui é o local de sugestão mais...
gostaria de sugerir uma alteração no arquivo TConnection.php
no case 'mysql': add suporte para utf8mb4 ..
tive problemas para gravar Emojis no banco de dados
gostaria de sugerir uma alteração no arquivo TConnection.php
no case 'mysql': add suporte para utf8mb4 ..
tive problemas para gravar Emojis no banco de dados
- <?php
- else if ($char == 'utf8mb4') // suporte para utf8mb4
- {
- $conn = new PDO("mysql:host={$host};port={$port};dbname={$name}", $user, $pass, array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8mb4"));
- }
- else
- {
- $conn = new PDO("mysql:host={$host};port={$port};dbname={$name}", $user, $pass, array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"));
- }
- ?>
Estou tentando salvar emojis tbm, mas não tive sucesso mesmo adicionando seu código no TConnection.
Teve que fazer mais alguma mudança?
Erro ao salvar:
SQLSTATE[HY000]: General error: 1366 Incorrect string value: 'xF0x9Fx92xA5xF0x9F...' for column 'texto' at row 1
Olá, no banco de dados, no caso do mysql precis alterar o Charset do campo pra "CHARACTER SET utf8mb4" ou no caso, talves da tabela, outros bancos de dados precisa pesquisar, não sei como é.
esqueci de comentar que precisa adicionar no config da conexão char = 'utf8mb4';
resumindo,
1-Alterar o charset do campo no banco de dados ""CHARACTER SET utf8mb4"
2-adicionar o código no TConnection
3-adicionar no config char = 'utf8mb4';
type = "mysql"
prep = "1"
char = 'utf8mb4'; <<<--- essa linha.