Emojis y otros caracteres -
York0x - 04-23-2024
Un saludo, al insertar copiando y pegando un emoji cualquiera, por ejemplo este:
http://Registrate o inicia tu sesión para ver este contenido
Mi sitio web no reconoce el carácter y aparecen así:
[img]Registrate o inicia tu sesión para ver este contenido[/img]
[img]Registrate o inicia tu sesión para ver este contenido[/img]
y quisiera que se mostrase el emoji 😙 (copiado y pegado) como si se insertase desde el móvil tal y como acabo de hacer.
Dejo usuario demo:
Usuario: demo
Contraseña: phpost
RE: Emojis y otros caracteres -
Tronlar - 04-23-2024
Creo que subí un fix para eso, porque me pasó actualizando un tema antiguo, voy a ver
RE: Emojis y otros caracteres -
Tronlar - 04-23-2024
Prueba esto phpost.es/thread-401.html
RE: Emojis y otros caracteres -
Miguel92 - 04-23-2024
(04-23-2024, 03:17 PM)York0x escribió: Un saludo, al insertar copiando y pegando un emoji cualquiera, por ejemplo este: [/url]
Mi sitio web no reconoce el carácter y aparecen así:
[img]Registrate o inicia tu sesión para ver este contenido[/img]
[img]Registrate o inicia tu sesión para ver este contenido[/img]
y quisiera que se mostrase el emoji 😙 (copiado y pegado) como si se insertase desde el móvil tal y como acabo de hacer.
Dejo usuario demo:
Usuario: demo
Contraseña: phpost
Aunque apliques es fix no funcionará ya que el problema esta en la codificación de caracteres en la base de datos, al no poder interpretar el emoji este lo guardará de esta forma ???, lo digo porque ya me paso, las tablas en las que se guarde dicho emoji tienen que estar con utf8mb4 y no con utf8
En inc/ext/
functions.php buscar esta línea (puede que algunos lo tengan así '
mysqli_set_charset($db_link, 'utf8')')
Código PHP:
$db_link->set_charset('utf8')
y cambian '
utf8' por '
utf8mb4' para evitar problemas de codificación al insertar y recuperar datos.
Luego desde este punto con cuidado.
1 - Hacen una copia de seguridad de la base o de la tabla que van a modificar. (si falla, pueden perder los datos)
2 - Realizamos la conversión de
la tabla para que pueda usarse los emojis, obviamente pueden usarlo para comentarios, fotos, etc
Código PHP:
ALTER TABLE p_posts CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
3 - Realizamos cambios en
las columnas en la que estos emojis se van a guardar en este caso el
post_title y
post_body
Código PHP:
ALTER TABLE `p_posts` CHANGE `post_title` `post_title` TINYTEXT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, CHANGE `post_body` `post_body` TEXT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL;
Y así sería el resultado
[img]Registrate o inicia tu sesión para ver este contenido[/img]
Otras tablas posibles
Comentarios en posts:
p_comentarios (tabla),
c_body (columna)
Fotos:
f_fotos (tabla),
f_title,
f_descripcion (columna)
Comentarios en fotos:
f_comentarios (tabla),
c_body (columna)
etc.
Aplicable a todas las tablas y columnas que requieras. Espero que te ayude
RE: Emojis y otros caracteres -
Mawriceo - 04-25-2024
(04-23-2024, 08:20 PM)Miguel92 escribió: (04-23-2024, 03:17 PM)York0x escribió: Un saludo, al insertar copiando y pegando un emoji cualquiera, por ejemplo este: [/url]
Mi sitio web no reconoce el carácter y aparecen así:
[img]Registrate o inicia tu sesión para ver este contenido[/img]
[img]Registrate o inicia tu sesión para ver este contenido[/img]
y quisiera que se mostrase el emoji 😙 (copiado y pegado) como si se insertase desde el móvil tal y como acabo de hacer.
Dejo usuario demo:
Usuario: demo
Contraseña: phpost
Aunque apliques es fix no funcionará ya que el problema esta en la codificación de caracteres en la base de datos, al no poder interpretar el emoji este lo guardará de esta forma ???, lo digo porque ya me paso, las tablas en las que se guarde dicho emoji tienen que estar con utf8mb4 y no con utf8
En inc/ext/functions.php buscar esta línea (puede que algunos lo tengan así 'mysqli_set_charset($db_link, 'utf8')')
Código PHP:
$db_link->set_charset('utf8')
y cambian 'utf8' por 'utf8mb4' para evitar problemas de codificación al insertar y recuperar datos.
Luego desde este punto con cuidado.
1 - Hacen una copia de seguridad de la base o de la tabla que van a modificar. (si falla, pueden perder los datos)
2 - Realizamos la conversión de la tabla para que pueda usarse los emojis, obviamente pueden usarlo para comentarios, fotos, etc
Código PHP:
ALTER TABLE p_posts CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
3 - Realizamos cambios en las columnas en la que estos emojis se van a guardar en este caso el post_title y post_body
Código PHP:
ALTER TABLE `p_posts` CHANGE `post_title` `post_title` TINYTEXT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, CHANGE `post_body` `post_body` TEXT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL;
Y así sería el resultado
[img]
Otras tablas posibles
Comentarios en posts: p_comentarios (tabla), c_body (columna)
Fotos: f_fotos (tabla), f_title, f_descripcion (columna)
Comentarios en fotos: f_comentarios (tabla), c_body (columna)
etc.
Aplicable a todas las tablas y columnas que requieras. Espero que te ayude
(04-25-2024, 06:07 PM)Mawriceo escribió: (04-23-2024, 08:20 PM)Miguel92 escribió: (04-23-2024, 03:17 PM)York0x escribió: Un saludo, al insertar copiando y pegando un emoji cualquiera, por ejemplo este: [/url]
Mi sitio web no reconoce el carácter y aparecen así:
[img]Registrate o inicia tu sesión para ver este contenido[/img]
[img]Registrate o inicia tu sesión para ver este contenido[/img]
y quisiera que se mostrase el emoji 😙 (copiado y pegado) como si se insertase desde el móvil tal y como acabo de hacer.
Dejo usuario demo:
Usuario: demo
Contraseña: phpost
Aunque apliques es fix no funcionará ya que el problema esta en la codificación de caracteres en la base de datos, al no poder interpretar el emoji este lo guardará de esta forma ???, lo digo porque ya me paso, las tablas en las que se guarde dicho emoji tienen que estar con utf8mb4 y no con utf8
En inc/ext/functions.php buscar esta línea (puede que algunos lo tengan así 'mysqli_set_charset($db_link, 'utf8')')
Código PHP:
$db_link->set_charset('utf8')
y cambian 'utf8' por 'utf8mb4' para evitar problemas de codificación al insertar y recuperar datos.
Luego desde este punto con cuidado.
1 - Hacen una copia de seguridad de la base o de la tabla que van a modificar. (si falla, pueden perder los datos)
2 - Realizamos la conversión de la tabla para que pueda usarse los emojis, obviamente pueden usarlo para comentarios, fotos, etc
Código PHP:
ALTER TABLE p_posts CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
3 - Realizamos cambios en las columnas en la que estos emojis se van a guardar en este caso el post_title y post_body
Código PHP:
ALTER TABLE `p_posts` CHANGE `post_title` `post_title` TINYTEXT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, CHANGE `post_body` `post_body` TEXT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL;
Y así sería el resultado
[img]
Otras tablas posibles
Comentarios en posts: p_comentarios (tabla), c_body (columna)
Fotos: f_fotos (tabla), f_title, f_descripcion (columna)
Comentarios en fotos: f_comentarios (tabla), c_body (columna)
etc.
Aplicable a todas las tablas y columnas que requieras. Espero que te ayude