utiliza teclado signos signo quien para niños los invento interrogacion importancia exclamacion ejemplos como php mysql unicode utf-8

php - teclado - signos de interrogacion y exclamacion ejemplos



Los caracteres Unicode se convierten en signos de interrogación después de insertarlos en la base de datos (4)

Cuando inserto un texto escrito en Unicode en la base de datos, se convierten en signos de interrogación. La codificación de la base de datos está establecida en utf-8. ¿Qué más puede ser incorrecto? Cuando reviso phpmyadmin ¡solo hay signos de interrogación insertados!

Este es el código que uso para conectarme a la base de datos:

define ("DB_HOST", "localhost"); // set database host define ("DB_USER", "root"); // set database user define ("DB_PASS","password"); // set database password define ("DB_NAME","name"); // set database name $link = mysql_connect(DB_HOST, DB_USER, DB_PASS) or die("Couldn''t make connection."); $db = mysql_select_db(DB_NAME, $link) or die("Couldn''t select database"); mysql_set_charset(''utf8'',$link); mysql_query("SET CHARACTER SET utf8");


¿Cómo sabes que se convierten en signos de interrogación? ¿Los ves como signos de interrogación en tus páginas de PHP, cuando sacas los campos de la base de datos o en un software como phpmyadmin?

De cualquier manera, el problema probablemente sea la codificación de su página web en lugar de la de la base de datos. Asegúrese de agregar la siguiente línea:

header(''Content-Type: text/html; charset=utf-8'');


¿El texto que insertas está codificado en UTF-8 también? ¿O tus archivos PHP no son UTF-8? ¿Ha configurado la conexión del cliente MySQL con UTF-8?

Si no, entonces esa es probablemente la causa del problema.


//first make sure your file produce utf-8 chars header(''Content-Type: text/html; charset=utf-8''); //make sure with your spelling //write mysql_query("SET CHARSET utf8"); //instead of mysql_query("SET CHARACTER SET utf8"); //for some reasons mysql_query("SET CHARSET SET utf8"); //works on some servers and for other servers not.i am not sure why? //try using mysql_set_charset("utf8"); only without mysql_query("SET CHARSET utf8"); //for me i had the same issue with my server //when i used mysql_set_charset("utf8"); only --> the problem solved //again make sure with your spelling and try again


Lo siento pero estás equivocado ... Mi amigo el Rey Julien solo tienes que ejecutar:

mysql_query("SET CHARACTER SET utf8"); mysql_query("SET CHARSET utf8"); mysql_query("SET COLLATION_CONNECTION = ''utf8_unicode_ci''"); //This statement does the job!!! ;)

¡Que tengas un buen día!