Ciao a tutti, premetto che son alle prime armi con ajax e sto provando ad utilizzare librerie che ho trovato nel web.
Sono riuscito a creare un form che funziona in questo modo:

Pagina iscriviti.php :

<form id="form_ajax" name="MyForm" method="post" onsubmit="xmlhttpPost('iscriviti_go.php', 'MyForm', 'MyResult', 'Wait...'); return false;">

<label for=nome>
Nome:
</label>
<input type=text name=nome>

<label for=pass>
Password:
</label>
<input type=password name=pass>

<label for=pass2>
Ripeti password:
</label>
<input type=password name=pass>

<input type=submit name=inserisci>

</form>

dopo inserisco anche il div in cui viene visualizzato il responso
<div id="MyResult" name="MyResult"></div>

Il form passa i dati alla pagina iscriviti_go.php :

$pass=$_POST['pass'];
$pass2=$_POST['pass2'];
$nome=$_POST['nome'];

if ($pass == $pass2)
{
INSERISCO I DATI NEL DATABASE
echo "Iscrizione andata a buon fine";
}
else
{
echo "Iscrizione fallita";
}


In sostanza se l'iscrizione viene effettuata nel div myresult appare "Iscrizione andata a buon fine", se no viene scritto "Iscrizione fallita".

Lo script è questo:


function xmlhttpPost(strURL,formname,responsediv,responsems g) {

var xmlHttpReq = false;

var self = this;

// Xhr per Mozilla/Safari/Ie7

if (window.XMLHttpRequest) {

self.xmlHttpReq = new XMLHttpRequest();

}

// per tutte le altre versioni di IE

else if (window.ActiveXObject) {

self.xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");

}

self.xmlHttpReq.open('POST', strURL, true);

self.xmlHttpReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');

self.xmlHttpReq.onreadystatechange = function() {

if (self.xmlHttpReq.readyState == 4) {

// Quando pronta, visualizzo la risposta del form

updatepage(self.xmlHttpReq.responseText,responsedi v);

}

else{

// In attesa della risposta del form visualizzo il msg di attesa

updatepage(responsemsg,responsediv);



}

}

self.xmlHttpReq.send(getquerystring(formname));

}



function getquerystring(formname) {

var form = document.forms[formname];

var qstr = "";



function GetElemValue(name, value) {

qstr += (qstr.length > 0 ? "&" : "")

+ escape(name).replace(/\+/g, "%2B") + "="

+ escape(value ? value : "").replace(/\+/g, "%2B");

//+ escape(value ? value : "").replace(/\n/g, "%0D");

}



var elemArray = form.elements;

for (var i = 0; i < elemArray.length; i++) {

var element = elemArray[i];

var elemType = element.type.toUpperCase();

var elemName = element.name;

if (elemName) {

if (elemType == "TEXT"

|| elemType == "TEXTAREA"

|| elemType == "PASSWORD"

|| elemType == "BUTTON"

|| elemType == "RESET"

|| elemType == "SUBMIT"

|| elemType == "FILE"

|| elemType == "IMAGE"

|| elemType == "HIDDEN")

GetElemValue(elemName, element.value);

else if (elemType == "CHECKBOX" && element.checked)

GetElemValue(elemName,

element.value ? element.value : "On");

else if (elemType == "RADIO" && element.checked)

GetElemValue(elemName, element.value);

else if (elemType.indexOf("SELECT") != -1)

for (var j = 0; j < element.options.length; j++) {

var option = element.options[j];

if (option.selected)

GetElemValue(elemName,

option.value ? option.value : option.text);

}

}

}

return qstr;

}

function updatepage(str,responsediv){

document.getElementById(responsediv).innerHTML = str;

}




Finchè l'iscrizione fallisce va tutto bene... il problema è che quando l'iscrizione viene effettuata mi piacerebbe che l'utente venga reindirizzato ad un altra pagina dove viene sempre scritto "Iscrizione andata a buon fine". Mi basterbbe anche che la scritta appaia in Iscrizione.php, ma che non si veda più il form x iscriversi.

Qualcuno mi sa dire se è possibile e come posso fare?

grazie