Estás en Inicio / Editorial / PHP
04.11.2004
Agreguemos expresiones o caritas a nuestro sistema, foro, tagboard, chat, comentarios, ósea cualquier script que queramos que tenga una(s) carita(s) o expresión(es).

Vamos a usar la función str_replace() de PHP: esta función sustituye tal por tal ejemplo: str_replace(\’carita_loca\’,'\img src=carita_loca.gif’) osea cambiamos cualquier aparición del texto ‘carita_loca’ por una imagen de la carita loca. Solo es un ejemplo.
Digamos que tenemos un sistema sea mysql o puro .txt, es indiferente lo importante es cambiar las expresiones de texto por imágenes, cierto. Bien esta es la función:
<?php
function expresiones($mensaje) {
$mensaje = str_replace(\":)\",\"<img src= feliz.gif>\", $mensaje);
$mensaje = str_replace(\":(\",\"<img src=triste.gif>\", $mensaje);
$mensaje = str_replace(\":P\",\"<img src=lengua.gif>\", $mensaje);
return $mensaje;
}
?>
Para que muestre las caritas filtramos el resultado de la variable $mensaje así : $mensaje = expresiones($mensaje); Esto le dice al sistema que si dentro de la variable $mensaje encuentra ( ejemplo: :), :P, :(, ) lo cambie por la imagen correspondiente.
Hasta el momento cuando el usuario coloque en nuestro campo name=’mensaje’ * hola
* cambiara el
por la carita correspondiente
Recordamos que ‘mensaje’ es el nombre del campo donde pondremos el texto que el sistema cambiara por las caritas y el texto grande o idea o lo que sea que estemos escribiendo. Entonces tenemos el ejemplo de un formulario:
form name=\'mi_formulario\' action=\'procesar.php\' method=\'post\' Nombre: <input type=\"text\" name=\"nombre\" size=\"26\"; Mensaje <textarea name=\"mensaje\" cols=\"58\" rows=\"14\" wrap=\"virtual\"><?echo $mensaje;?></textarea> <input type=\"submit\" name=\"Submit\" value=\"Publicar\"> </form>
Ahora nosotros queremos que al dar un clic en un botón o carita salga
en el campo name=’mensaje’ tendremos que hacer esto:
<script language=\"JavaScript\">
<!--
function caritas(Which){
document.mi_formulario.mensaje.value = document.mi_formulario.mensaje.value + Which;
}
// -->
</script>
Luego el formulario, ojo con esto mi_formulario es el nombre del formulario y mensaje es el campo donde va a ir las expresiones en texto de las caritas.
Este es el links que va hacer aparecer las caritas en el textarea:
<a href=\"javascript:caritas(\':(\')\"><img src=triste.gif></a>
Ahora les toca a ustedes inventar. Saludos a tod@s….!
Califica esta nota:
Jorge De Freitas
Diseñador Grafico, Webmaster, Programador de aplicaciones web (especialidades: Html, Php y Mysql), Asesor en tecnologías web y Desarrollador de proyectos web.
Si eres nuevo en Maestros del Web y te agradan nuestras publicaciones, te invitamos a suscribirte a nuestro Feed.
Sindícanos en: Google Reader, Bloglines, My Yahoo o My MSN | ¿Qué es el Feed?
11 comentarios en total.
Algún website recomendado para encontrar smyles con licencia que permita reutilizarlos libremente?
Hola cvander:
A mi me gusta esta página: http://www.jms101.btinternet.co.uk/index.htm
Lamentablemente mi inglés no me ayudó mucho sobre las condiciones, pero me parece que no hay que modificarlos y no se deben usar en páginas comerciales (en la página que los usé también puse una referencia)
Saludos :arriba:
Tengo este sistema de comentarios para articulos pero cuando quiero poner los emoticons solo sale sus valores el texto, quiero saber que tengo que cambiar
code:
< ?php
function expresiones($comentario) {
$comentario = str_replace(”:)”,”“, $comentario);
$comentario = str_replace(”:(”,”“, $comentario);
return $comentario;
}
?>
![]()
![]()
Holas mi problema viene a la hora de añadir [url] que no se com hacer para que coloque el texto insertado entre los tags en el href y el texto del enlace
¿saben como puedo hacer esto?
GRaciassssss
no me va ![]()
estoy haciendo lo mismo, y no hace lo que en teoria debe hacer, de una base de datos leo la imagen y como se representan con simbolos, la idea es que vayan cambiando la carita por la imagen correspondiente pero no lo hace.
al final me da el mismo texto
Gracias! A mi me funciona a las 1000 maravillas.
Si os da el texto es porque no habeis pasado el mensaje por la función que cambia el texto por la imagen. Para imprimir el mensaje con imágenes teneis que poner:
echo expresiones($mensaje);
Saludos!
Hi! Very nice site! Thanks you very much! CtmdzTnpxPyVJ
si
hi very nicesite
quiero caritas !!!! porque nunca tengo
Maestros del Web es el punto de encuentro para los entusiastas de la red.
Creative Commons by-nc-sa 3.0 | Política de Privacidad | CMS: Wordpress