Foros del Web » Programando para Internet » PHP »

problema con un tag para emoticones

Estas en el tema de problema con un tag para emoticones en el foro de PHP en Foros del Web. Tengo un array con los tag de los emoticones tal que así: Código: $emo = array ("",":)",";)",":D",";D",">:(",":(",":o","8)","???","::)",":P",":[",":-x",":-/",":-*",":_(",':]'); y los sustituyo con un for tal que ...
  #1 (permalink)  
Antiguo 05/04/2005, 11:32
 
Fecha de Ingreso: agosto-2004
Mensajes: 36
Antigüedad: 19 años, 8 meses
Puntos: 0
problema con un tag para emoticones

Tengo un array con los tag de los emoticones tal que así:
Código:
$emo = array ("",":)",";)",":D",";D",">:(",":(",":o","8)","???","::)",":P",":[",":-x",":-/",":-*",":_(",':]');
y los sustituyo con un for tal que así:

Código:
for ($i=0;$i<=17;$i++){
$mensaje = str_replace("$emo[$i]", "<img src=images/emoticones/emo_0$i.gif>", $mensaje);
}
El problema está con el tag ::) por muchas vueltas que le dí no se reemplaza por la imagen del emoticón siempre me muestra los : y acontinuación la imagen del emoticón correspondiente a :) Probé incluso a cambiar los : por sus entidades html o entre comillas simples y nada de nada. Por esto recurro a vosotros que siempre teneis buenas respuestas.
__________________
Como aquel que calla otorga y aunque la ignorancia es sorda pude levantar la voz, más fuerte que los ladridos de los perros consentidos y que la voz del pastor.

Última edición por E*M*P*I*C*A*L; 05/04/2005 a las 12:03
  #2 (permalink)  
Antiguo 05/04/2005, 11:39
Avatar de Bio
Bio
 
Fecha de Ingreso: diciembre-2003
Ubicación: México DF
Mensajes: 180
Antigüedad: 20 años, 4 meses
Puntos: 0
Creo que lo que pasa es que como :) se encuentraprimero dentro del array, cuando lo recorres pasa primero por este y por eso lo sustituye asi. Quiza si cambias el orden y pones ::) primero o cambia los caracteres que identifican a este ultimo se vería bien.
  #3 (permalink)  
Antiguo 05/04/2005, 11:57
 
Fecha de Ingreso: agosto-2004
Mensajes: 36
Antigüedad: 19 años, 8 meses
Puntos: 0
Gracias por contestar, aún cambiando el orden no funciona. Si, ahora no muestra los : y luego el emticón correspondiente a :), si no que solo muestra el emoticón correspondiente a :).

Bueno, como solución temporal optaré por cambiar el tag a =), aunque no me guste :/. La pregunta la dejo en el aire ya que el problema no está solucionado. Cualquiera que sea el tag ::) :;) 0:), etc... se sustituye por su equivalente :) ;) :).
__________________
Como aquel que calla otorga y aunque la ignorancia es sorda pude levantar la voz, más fuerte que los ladridos de los perros consentidos y que la voz del pastor.

Última edición por E*M*P*I*C*A*L; 05/04/2005 a las 11:59
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 17:45.