Salve a tutti,
ho una funzione php che mi permette di gestire la trasformazione dell'emoticon scritta in immagine, ma come posso adattarla in js e richiamarla in un codice js?
Ecco il codice php:
Codice PHP:
<?php
function faccine($messaggio){
  
$messaggio_ok str_replace(":)""[img]smile.gif[/img]"$messaggio);
  
$messaggio_ok str_replace(":-)""[img]smile.gif[/img]"$messaggio_ok);
  
$messaggio_ok str_replace(":(""<img src=\"triste.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace(":-(""<img src=\"triste.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace(":P""<img src=\"linguaccia.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace(":p""<img src=\"linguaccia.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace(":-p""<img src=\"linguaccia.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace(":-P""<img src=\"linguaccia.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace(":D""<img src=\"grandesmile.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace(":-D""<img src=\"grandesmile.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace(":o""<img src=\"stupito.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace(":O""<img src=\"stupito.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace(":-o""<img src=\"stupito.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace(":-O""<img src=\"stupito.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace(";)""<img src=\"occhiolino.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace(";-)""<img src=\"occhiolino.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace(":v""<img src=\"pacman.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace(":V""<img src=\"pacman.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace(":-v""<img src=\"pacman.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace(":-V""<img src=\"pacman.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace(">:( ""<img src=\"occhistrizzati.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace(">:-(""<img src=\"occhistrizzati.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace(":/""<img src=\"perplesso.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace(":-/""<img src=\"perplesso.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace(":'(""<img src=\"lacrima.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace(":'-(""<img src=\"lacrima.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace("8)""<img src=\"occhialichiari.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace("8-)""<img src=\"occhialichiari.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace("B|""<img src=\"occhialiscuri.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace("B-|""<img src=\"occhialiscuri.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace("b|""<img src=\"occhialiscuri.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace("b-|""<img src=\"occhialiscuri.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace("<3""<img src=\"cuore.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace("3:)""<img src=\"diavoletto.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace("3:-)""<img src=\"diavoletto.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace("o:)""<img src=\"angioletto.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace("O:)""<img src=\"angioletto.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace("0:)""<img src=\"angioletto.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace("o:-)""<img src=\"angioletto.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace("O:-)""<img src=\"angioletto.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace("0:-)""<img src=\"angioletto.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace("o.O""<img src=\"occhiopiùgrande.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace(">:o""<img src=\"felicissimostrizzati.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace(">:O""<img src=\"felicissimostrizzati.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace(">:-o""<img src=\"felicissimostrizzati.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace(">:-O""<img src=\"felicissimostrizzati.gfi\">"$messaggio_ok);
  
$messaggio_ok str_replace(":3""<img src=\"perplesso.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace(":-3""<img src=\"perplesso.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace("*_*""<img src=\"indifferente.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace("*-*""<img src=\"indifferente.gif\">"$messaggio_ok);
  
$messaggio_ok str_replace("-_-""<img src=\"indifferente.gif\">"$messaggio_ok);
  
  return 
$messaggio_ok;
}
?>
Ecco il codice js della pagina nella quale lo voglio inserire (non è completo per questione di caratteri):
Codice PHP:

    
if (chatBoxeslength == 0) {
        $(
"#chatbox_"+chatboxtitle).css('right''20px');
    } else {
        
width = (chatBoxeslength)*(225+7)+20;
        $(
"#chatbox_"+chatboxtitle).css('right'width+'px');
    }
    
    
chatBoxes.push(chatboxtitle);

    if (
minimizeChatBox == 1) {
        
minimizedChatBoxes = new Array();

        if ($.
cookie('chatbox_minimized')) {
            
minimizedChatBoxes = $.cookie('chatbox_minimized').split(/\|/);
        }
        
minimize 0;
        for (
j=0;j<minimizedChatBoxes.length;j++) {
            if (
minimizedChatBoxes[j] == chatboxtitle) {
                
minimize 1;
            }
        }

        if (
minimize == 1) {
            $(
'#chatbox_'+chatboxtitle+' .chatboxcontent').css('display','none');
            $(
'#chatbox_'+chatboxtitle+' .chatboxinput').css('display','none');
        }
    }

    
chatboxFocus[chatboxtitle] = false;

    $(
"#chatbox_"+chatboxtitle+" .chatboxtextarea").blur(function(){
        
chatboxFocus[chatboxtitle] = false;
        $(
"#chatbox_"+chatboxtitle+" .chatboxtextarea").removeClass('chatboxtextareaselected');
    }).
focus(function(){
        
chatboxFocus[chatboxtitle] = true;
        
newMessages[chatboxtitle] = false;
        $(
'#chatbox_'+chatboxtitle+' .chatboxhead').removeClass('chatboxblink');
        $(
"#chatbox_"+chatboxtitle+" .chatboxtextarea").addClass('chatboxtextareaselected');
    });

    $(
"#chatbox_"+chatboxtitle).click(function() {
        if ($(
'#chatbox_'+chatboxtitle+' .chatboxcontent').css('display') != 'none') {
            $(
"#chatbox_"+chatboxtitle+" .chatboxtextarea").focus();
        }
    });

    $(
"#chatbox_"+chatboxtitle).show();
}


function 
chatHeartbeat(){

    var 
itemsfound 0;
    
    if (
windowFocus == false) {
 
        var 
blinkNumber 0;
        var 
titleChanged 0;
        for (
x in newMessagesWin) {
            if (
newMessagesWin[x] == true) {
                ++
blinkNumber;
                if (
blinkNumber >= blinkOrder) {
                    
document.title x+' says...';
                    
titleChanged 1;
                    break;    
                }
            }
        }
        
        if (
titleChanged == 0) {
            
document.title originalTitle;
            
blinkOrder 0;
        } else {
            ++
blinkOrder;
        }

    } else {
        for (
x in newMessagesWin) {
            
newMessagesWin[x] = false;
        }
    }

    for (
x in newMessages) {
        if (
newMessages[x] == true) {
            if (
chatboxFocus[x] == false) {
                
//FIXME: add toggle all or none policy, otherwise it looks funny
                
$('#chatbox_'+x+' .chatboxhead').toggleClass('chatboxblink');
            }
        }
    }
    
    $.
ajax({
      
url"chat.php?action=chatheartbeat",
      
cachefalse,
      
dataType"json",
      
success: function(data) {

        $.
each(data.items, function(i,item){
            if (
item)    { // fix strange ie bug

                
chatboxtitle item.f;

                if ($(
"#chatbox_"+chatboxtitle).length <= 0) {
                    
createChatBox(chatboxtitle);
                }
                if ($(
"#chatbox_"+chatboxtitle).css('display') == 'none') {
                    $(
"#chatbox_"+chatboxtitle).css('display','block');
                    
restructureChatBoxes();
                }
                
                if (
item.== 1) {
                    
item.username;
                }

                if (
item.== 2) {
                    $(
"#chatbox_"+chatboxtitle+" .chatboxcontent").append('<div class="chatboxmessage"><span class="chatboxinfo">'+item.m+'</span></div>');
                } else {
                    
newMessages[chatboxtitle] = true;
                    
newMessagesWin[chatboxtitle] = true;
                    $(
"#chatbox_"+chatboxtitle+" .chatboxcontent").append('<div class="chatboxmessage"><span class="chatboxmessagefrom">'+item.f+':</span><span class="chatboxmessagecontent">'+item.m+'</span></div>');
                }

                $(
"#chatbox_"+chatboxtitle+" .chatboxcontent").scrollTop($("#chatbox_"+chatboxtitle+" .chatboxcontent")[0].scrollHeight);
                
itemsfound += 1;
            }
        });

        
chatHeartbeatCount++;

        if (
itemsfound 0) {
            
chatHeartbeatTime minChatHeartbeat;
            
chatHeartbeatCount 1;
        } else if (
chatHeartbeatCount >= 10) {
            
chatHeartbeatTime *= 2;
            
chatHeartbeatCount 1;
            if (
chatHeartbeatTime maxChatHeartbeat) {
                
chatHeartbeatTime maxChatHeartbeat;
            }
        }
        
        
setTimeout('chatHeartbeat();',chatHeartbeatTime);
    }});
}

function 
closeChatBox(chatboxtitle) {
    $(
'#chatbox_'+chatboxtitle).css('display','none');
    
restructureChatBoxes();

    $.
post("chat.php?action=closechat", { chatboxchatboxtitle} , function(data){    
    });

}

function 
toggleChatBoxGrowth(chatboxtitle) {
    if ($(
'#chatbox_'+chatboxtitle+' .chatboxcontent').css('display') == 'none') {  
        
        var 
minimizedChatBoxes = new Array();
        
        if ($.
cookie('chatbox_minimized')) {
            
minimizedChatBoxes = $.cookie('chatbox_minimized').split(/\|/);
        }

        var 
newCookie '';

        for (
i=0;i<minimizedChatBoxes.length;i++) {
            if (
minimizedChatBoxes[i] != chatboxtitle) {
                
newCookie += chatboxtitle+'|';
            }
        }

        
newCookie newCookie.slice(0, -1)


        $.
cookie('chatbox_minimized'newCookie);
        $(
'#chatbox_'+chatboxtitle+' .chatboxcontent').css('display','block');
        $(
'#chatbox_'+chatboxtitle+' .chatboxinput').css('display','block');
        $(
"#chatbox_"+chatboxtitle+" .chatboxcontent").scrollTop($("#chatbox_"+chatboxtitle+" .chatboxcontent")[0].scrollHeight);
    } else {
        
        var 
newCookie chatboxtitle;

        if ($.
cookie('chatbox_minimized')) {
            
newCookie += '|'+$.cookie('chatbox_minimized');
        }


        $.
cookie('chatbox_minimized',newCookie);
        $(
'#chatbox_'+chatboxtitle+' .chatboxcontent').css('display','none');
        $(
'#chatbox_'+chatboxtitle+' .chatboxinput').css('display','none');
    }
    
}

function 
checkChatBoxInputKey(event,chatboxtextarea,chatboxtitle) {
     
    if(
event.keyCode == 13 && event.shiftKey == 0)  {
        
message = $(chatboxtextarea).val();
        
message message.replace(/^\s+|\s+$/g,"");

        $(
chatboxtextarea).val('');
        $(
chatboxtextarea).focus();
        $(
chatboxtextarea).css('height','44px');
        if (
message != '') {
            $.
post("chat.php?action=sendchat", {tochatboxtitlemessagemessage} , function(data){
                
message message.replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/\"/g,"&quot;");
                $("
#chatbox_"+chatboxtitle+" .chatboxcontent").append('<div class="chatboxmessage"><span class="chatboxmessagefrom">'+username+':</span><span class="chatboxmessagecontent">'+message+'</span></div>');
                
$("#chatbox_"+chatboxtitle+" .chatboxcontent").scrollTop($("#chatbox_"+chatboxtitle+" .chatboxcontent")[0].scrollHeight);
            });
        }
        
chatHeartbeatTime minChatHeartbeat;
        
chatHeartbeatCount 1;

        return 
false;
    }

    var 
adjustedHeight chatboxtextarea.clientHeight;
    var 
maxHeight 94;

    if (
maxHeight adjustedHeight) {
        
adjustedHeight Math.max(chatboxtextarea.scrollHeightadjustedHeight);
        if (
maxHeight)
            
adjustedHeight Math.min(maxHeightadjustedHeight);
        if (
adjustedHeight chatboxtextarea.clientHeight)
            $(
chatboxtextarea).css('height',adjustedHeight++'px');
    } else {
        $(
chatboxtextarea).css('overflow','auto');
    }
     
}

function 
startChatSession(){  
    $.
ajax({
      
url"chat.php?action=startchatsession",
      
cachefalse,
      
dataType"json",
      
success: function(data) {
 
        
username data.username;

        $.
each(data.items, function(i,item){
            if (
item)    { // fix strange ie bug

                
chatboxtitle item.f;

                if ($(
"#chatbox_"+chatboxtitle).length <= 0) {
                    
createChatBox(chatboxtitle,1);
                }
                
                if (
item.== 1) {
                    
item.username;
                }

                if (
item.== 2) {
                    $(
"#chatbox_"+chatboxtitle+" .chatboxcontent").append('<div class="chatboxmessage"><span class="chatboxinfo">'+item.m+'</span></div>');
                } else {
                    $(
"#chatbox_"+chatboxtitle+" .chatboxcontent").append('<div class="chatboxmessage"><span class="chatboxmessagefrom">'+item.f+':</span><span class="chatboxmessagecontent">'+item.m+'</span></div>');
                }
            }
        });
        
        for (
i=0;i<chatBoxes.length;i++) {
            
chatboxtitle chatBoxes[i];
            $(
"#chatbox_"+chatboxtitle+" .chatboxcontent").scrollTop($("#chatbox_"+chatboxtitle+" .chatboxcontent")[0].scrollHeight);
            
setTimeout('$("#chatbox_"+chatboxtitle+" .chatboxcontent").scrollTop($("#chatbox_"+chatboxtitle+" .chatboxcontent")[0].scrollHeight);'100); // yet another strange ie bug
        
}
    
    
setTimeout('chatHeartbeat();',chatHeartbeatTime);
        
    }});
}; 
Grazie a tutti in anticipo per il vostro aiuto,
Cicciaramba.