Salve,
sto realizzando un sito in PHP e per adesso lo sto facendo in locale. In parole povere ho un server installato sulla mia macchina.

Ho integrato in una della pagine due script che mi consentono di aggiornare in modo asincrono pare della stessa

script 1
Codice PHP:
// funzione per prendere un elemento con id univoco
function prendiElementoDaId(id_elemento)
    {
        var 
elemento;
        if(
document.getElementById)
            
elemento document.getElementById(id_elemento);
        else
            
elemento document.all[id_elemento];
        return 
elemento;
    };

// funzione per assegnare un oggetto XMLHttpRequest
function assegnaXMLHttpRequest()
    {
        var
        
XHR null,
        
browserUtente navigator.userAgent.toUpperCase();
        if(
typeof(XMLHttpRequest) === "function" || typeof(XMLHttpRequest) === "object")
            
XHR = new XMLHttpRequest();
        else if(
window.ActiveXObject && browserUtente.indexOf("MSIE 4") < 0)
            {
                if(
browserUtente.indexOf("MSIE 5") < 0)
                    
XHR = new ActiveXObject("Msxml2.XMLHTTP");
                else
                    
XHR = new ActiveXObject("Microsoft.XMLHTTP");
            }
        return 
XHR;
    };

/** OGGETTI / ARRAY */

// oggetto di verifica stato
var readyState =
    {
        
INATTIVO:    0,
        
INIZIALIZZATO:    1,
        
RICHIESTA:    2,
        
RISPOSTA:    3,
        
COMPLETATO:    4
    
};

// array descrittivo dei codici restituiti dal server
// [la scelta dell' array è per evitare problemi con vecchi browsers]
var statusText = new Array();
statusText[100] = "Continue";
statusText[101] = "Switching Protocols";
statusText[200] = "OK";
statusText[201] = "Created";
statusText[202] = "Accepted";
statusText[203] = "Non-Authoritative Information";
statusText[204] = "No Content";
statusText[205] = "Reset Content";
statusText[206] = "Partial Content";
statusText[300] = "Multiple Choices";
statusText[301] = "Moved Permanently";
statusText[302] = "Found";
statusText[303] = "See Other";
statusText[304] = "Not Modified";
statusText[305] = "Use Proxy";
statusText[306] = "(unused, but reserved)";
statusText[307] = "Temporary Redirect";
statusText[400] = "Bad Request";
statusText[401] = "Unauthorized";
statusText[402] = "Payment Required";
statusText[403] = "Forbidden";
statusText[404] = "Not Found";
statusText[405] = "Method Not Allowed";
statusText[406] = "Not Acceptable";
statusText[407] = "Proxy Authentication Required";
statusText[408] = "Request Timeout";
statusText[409] = "Conflict";
statusText[410] = "Gone";
statusText[411] = "Length Required";
statusText[412] = "Precondition Failed";
statusText[413] = "Request Entity Too Large";
statusText[414] = "Request-URI Too Long";
statusText[415] = "Unsupported Media Type";
statusText[416] = "Requested Range Not Satisfiable";
statusText[417] = "Expectation Failed";
statusText[500] = "Internal Server Error";
statusText[501] = "Not Implemented";
statusText[502] = "Bad Gateway";
statusText[503] = "Service Unavailable";
statusText[504] = "Gateway Timeout";
statusText[505] = "HTTP Version Not Supported";
statusText[509] = "Bandwidth Limit Exceeded"
script 2

Codice PHP:
// INIZIO INTEGRAZIONE CODICE PER LA GESTIONE DEI FILTRI IN AJAX
function caricaTesto(nomeFile)
    {
        var
        
ajax assegnaXMLHttpRequest(),
        
elemento prendiElementoDaId("box_edit_calendario"),
        
cmbNome prendiElementoDaId("nome"),
        
cmbLuogo prendiElementoDaId("luogo"),
        
cmbData prendiElementoDaId("data"),
        
cmbOra prendiElementoDaId("ora"),
        
nome "nome=" cmbNome.value,
        
luogo "luogo=" cmbLuogo.value,
        
data "data=" cmbData.value,
        
ora "ora=" cmbOra.value;
        
variabileTot nome "&" luogo "&" data "&" ora;
        if(
ajax)
            {
                
ajax.open("post"nomeFiletrue);
                
ajax.setRequestHeader("content-type""application/x-www-form-urlencoded");
                
ajax.setRequestHeader("content-type""text/html; charset=ISO-8859-1");
                
ajax.setRequestHeader("connection""close");
                
ajax.onreadystatechange = function()
                    {  
                        if(
ajax.readyState === readyState.COMPLETATO)
                            {
                                if(
statusText[ajax.status] === "OK")
                                    
elemento.innerHTML ajax.responseText;
                                else
                                    {
                                        
elemento.innerHTML "<tr><td colspan=\"4\">Errore durante l'esecuzione dello script.</td></tr>";
                                        
elemento.innerHTML += "<tr><td colspan=\"4\">Errore corrente: " statusText[ajax.status] + "</td></tr>";
                                    }
                            } 
                    }
                
ajax.send(variabileTot);
            }
        return 
null;
    } 
// FINE INTEGRAZIONE AJAX 
nella pagina in questione richiamo all'evento onchange delle select in questo modo

codice:
onchange=\"return caricaTesto('table.php')\
il problema è il seguente

se scrivo nel browser

http://localhost/pagina.php

funziona tutto regolarmente

se provo a collegarmi dall'esterno facendo

http://mioip/pagina.php

il server funziona. riesco a visualizzare la pagina. ma non funziona più ajax. settando il filtro mi scompare tutto.

per caso bisogna settare qualcosa sul server affinchè tutto fili liscio?

grazie