PHP-Hispano.net Comunidad hispana de desarrollo web
Darse de alta en la web | Recuperar password   

Escapar cadena para BD (soporta UTF-8) - Versión 1

por yandalf Enviado 21 ene 08 22 descargas 5 comentarios Categoría Scripts

Conjunto de funciones que permiten la conversión de cadenas con caracteres especiales (Iso8856 o UTF-8 con comillas ya sean dobles o simples) a formato HTML de la siguiente forma:

Caracter especial (UTF-8 o no) -> &#valor_numerico_caracter;

Útil para almacenar datos en bases de datos que no den soporte para UTF-8

Incluye un ejemplo para ver concretamente como funciona. El ejemplo incluye caracteres especiales, caracteres rusos y caracteres chinos por lo que en algunos navegadores pueden no verse bien los caracteres del ejemplo.

Comentarios

Avatar de ZydRick #5 ZydRick
06 ene 09
No está mal...
Avatar de porquero #4 porquero
24 oct 08
Creo que el script hace lo que dice, y si lo comparamos con htmlentities() hay mucha diferencia en la interpretación y resultado de la cadena. Para ver agreguen esta linea y verán la diferencia:

echo htmlentities($cadena);

Aunque para internacionalizacion es recomendable usar alguna norma de transición como UTF8. No es recomendable guardar datos "crudos" ya que genera problemas de interpretación.
Avatar de iaaqov #3 iaaqov
09 feb 08
creo que no hay necesidad de hacer toda esta vuelta, simplemente en tu HTML escribes entre las etiquetas <head> </head>:
<meta http-equiv='content-type' content='text/html; charset=utf-8' />

y cuando haces la conexion con la BD MySQL y seleccionas la BD, paso a seguir inmediatamente es escribir:
mysql_query("SET NAMES UTF8");

y ya tienes todas las paginas con UTF8 asi hice yo cuando necesitaba caracteres Hebreos.
pero se valora el esfuerzo no?
Avatar de yandalf #2 yandalf
23 ene 08
Hola turl, se de la existencia de esas dos funciones, en este caso se hace referencia a caracteres especiales UTF-8 como pueden ser caracteres arábicos, caracteres rusos, chinos, etc, ademas en el ejemplo incluyo esos caracteres para poder verlos.

En todo momento se evita el uso de las funciones utf8_encode y utf8_decode y se genera una salida HTML interpretable por cualquier navegador que tenga instaladas dichas fuentes.
Avatar de turl #1 turl
22 ene 08
Me parece que esto no tiene sentido existiendo htmlentities / html_entity_decode, o he mezclado todo?
Para poder participar debes ser un usuario registrado de PHP-Hispano. :: Deseo darme de alta en esta comunidad ::
Login / Password   

Votación

Este archivo está siendo evaluado por la comunidad de PHP-Hispano.
Puedes colaborar enviando tu voto para que este archivo sea aceptado, o ayudando al autor a mejorarlo con sugerencias.

Descarga

Descargar versión
ZIP (1,60 KB)

Actualizaciones ( 0 )

Características de la versión

Conjunto de funciones que permiten la conversión de cadenas con caracteres especiales (Iso8856 o UTF-8 con comillas ya sean dobles o simples) a formato HTML de la siguiente forma:

Caracter especial (UTF-8 o no) -> &#valor_numerico_caracter;

Útil para almacenar datos en bases de datos que no den soporte para UTF-8

Incluye un ejemplo para ver concretamente como funciona. El ejemplo incluye caracteres especiales, caracteres rusos y caracteres chinos por lo que en algunos navegadores pueden no verse bien los caracteres del ejemplo.

Todas las versiones

  • No existe ninguna otra versión disponible

php-hispano.net 2002 - 2013 | XHTML 1.0
Datos Legales | Webmaster