Foros del Web » Programando para Internet » PHP »

Identificar Letras Chinas En PHP

Estas en el tema de Identificar Letras Chinas En PHP en el foro de PHP en Foros del Web. Buenos dias, Estoy teniendo un problema con unos datos que se guardan en Mysql, entre los campos hay una que guarda una cadena de (titulo). ...
  #1 (permalink)  
Antiguo 15/08/2013, 08:51
 
Fecha de Ingreso: noviembre-2008
Ubicación: Cochabamba Bolivia
Mensajes: 519
Antigüedad: 15 años, 5 meses
Puntos: 26
Identificar Letras Chinas En PHP

Buenos dias,

Estoy teniendo un problema con unos datos que se guardan en Mysql, entre los campos hay una que guarda una cadena de (titulo).

El problema es que en algunas ocasiones se guardan cadenas de titulo en Chino, es decir con las letras chinas y todo, y lo que quiero es evitar que se guarden los datos cuando la cadena tenga contenido en chino, me gustaria que se guarde solo si esta en español, ingles o cualquier otro idioma que usen las consonantes y las vocales como conocemos.

Existe alguna funcion para detectar el idioma o si tiene caracteres chinos en PHP? o bien alguna alternativa que puedan sugerirme.

Saludos.
  #2 (permalink)  
Antiguo 15/08/2013, 09:14
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 2 meses
Puntos: 288
Respuesta: Identificar Letras Chinas En PHP

no importa el tipo de caracter , al final puedes reproducir el mismo caracter con un codigo ascci y caracter especial de html.
lo que tendrias que hacer es guardar todos tus datos de la forma correcta:
Código PHP:
Ver original
  1. <?
  2.  
  3. saveText($texto){
  4. return htmlentities(str_replace(array('\"','\\\''),array('"',"'"),$text), ENT_QUOTES, "UTF-8", true);
  5.  
  6. }
  7.  
  8. getTexto($text){
  9. return html_entity_decode($text, ENT_NOQUOTES, 'UTF-8');
  10. }
  11.  
  12. ?>
  #3 (permalink)  
Antiguo 15/08/2013, 09:18
 
Fecha de Ingreso: noviembre-2008
Ubicación: Cochabamba Bolivia
Mensajes: 519
Antigüedad: 15 años, 5 meses
Puntos: 26
Respuesta: Identificar Letras Chinas En PHP

Cita:
Iniciado por Patriarka Ver Mensaje
no importa el tipo de caracter , al final puedes reproducir el mismo caracter con un codigo ascci y caracter especial de html.
lo que tendrias que hacer es guardar todos tus datos de la forma correcta:
Código PHP:
Ver original
  1. <?
  2.  
  3. saveText($texto){
  4. return htmlentities(str_replace(array('\"','\\\''),array('"',"'"),$text), ENT_QUOTES, "UTF-8", true);
  5.  
  6. }
  7.  
  8. getTexto($text){
  9. return html_entity_decode($text, ENT_NOQUOTES, 'UTF-8');
  10. }
  11.  
  12. ?>
Disculpa estoy un poco confuso con tu respuesta, exactamente que hace ese codigo? lo que yo quiero es simplemente detectar si una cadena esta escrita en chino, arabe u cualquier idioma que no sea con las letras que nosotros conocemos (a-z).

Una vez detectado evitar guardarlos en la BD
  #4 (permalink)  
Antiguo 15/08/2013, 19:39
Avatar de xSkArx  
Fecha de Ingreso: marzo-2008
Ubicación: Chile
Mensajes: 945
Antigüedad: 16 años, 1 mes
Puntos: 96
Respuesta: Identificar Letras Chinas En PHP

Deberias hacerlo a la inversa, si tiene caracteres "nornales" guardarlo en la bd, o ahi ves tu, puedes usar strstr() para buscar cualquier caracter. Saludos

PD: O mejor puedes usar esto ctype_alnum(), espero te sirva, bye

Última edición por xSkArx; 16/08/2013 a las 14:53

Etiquetas: letras, mysql
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:59.