Maestros del Web


Estás en Inicio / Editorial / PHP

04.11.2004

Agregar caritas a nuestro sistema

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).

Caritas

Empecemos:

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.

Veamos como funciona:

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;
}
?>

Así sola esta función no hace nada:

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

Pero vamos mas lejos:

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:

Antes del formulario ponemos 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:

1 estrella2 estrellas3 estrellas4 estrellas5 estrellas (2 votos, promedio: 4.5 de 5)
Loading ... Loading ...
Jorge De Freitas

Sobre el autor

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?

Comentarios

11 comentarios en total.

  1. cvander 09.06.2005 - 12:46 - #

    Algún website recomendado para encontrar smyles con licencia que permita reutilizarlos libremente?

  2. caricatos 09.06.2005 - 13:04 - #

    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:

  3. Vhyll 26.07.2005 - 15:12 - #

    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;
    }
    ?>



  4. Tollelle 22.12.2005 - 09:22 - #

    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

  5. borja 29.09.2006 - 09:44 - #

    no me va :(

  6. jesus 07.10.2006 - 20:09 - #

    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

  7. g0rka 06.12.2006 - 09:40 - #

    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!

  8. VYv33WpZF2 11.01.2007 - 10:42 - #

    Hi! Very nice site! Thanks you very much! CtmdzTnpxPyVJ

  9. hola 21.02.2007 - 19:57 - #

    si

  10. hyeeafa 21.02.2007 - 19:58 - #

    hi very nicesite

  11. trola 26.02.2007 - 14:23 - #

    quiero caritas !!!! porque nunca tengo

Deja tu Comentario


Maestros del Web se reserva el derecho de moderación de los comentarios. Evita utilizar palabras soeces, ataques directos, descalificativos, insultos, de lo contrario tu comentario será eliminado.


-


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