Ciao a tutti ho un problema a capire bene il funzionamento di ajax, prima vi spiego il tutto e poi posto il codice
Allora, io ho una normalisissima e semplicissima pagina .php con dentro solo il form di invio mail e le variabili php in $_POST[''] (sopra sta il php e sotto il form html)
Ora ho scritto questo in un file esterno .js
Di funzionare funziona solo che mi spara l'intera pagina nel div invece, vorrei fare in modo che una volta che premo il pulsante nella stessa pagina index mi rimangono le variabili negli imput e senza che mi ridia tutta la pagina index nel div mi invii semplicemente la mail....
Come devo fa'?
Allora, io ho una normalisissima e semplicissima pagina .php con dentro solo il form di invio mail e le variabili php in $_POST[''] (sopra sta il php e sotto il form html)
Ora ho scritto questo in un file esterno .js
Codice:
// AJAX
function GetXmlHttpObject()
{
if (window.XMLHttpRequest)
{
// IE7+, Firefox, Chrome, Opera, Safari
return new XMLHttpRequest();
}
if (window.ActiveXObject)
{
// IE5, IE6
return new ActiveXObject("Microsoft.XMLHTTP");
}
return null;
}
function submitFormWithAjax()
{
var ajaxRequest = new GetXmlHttpObject();
var checkFormSendMail = document.formSendMail.checkFormSendMail.value;
var sender = document.formSendMail.sender.value;
var sendTo = document.formSendMail.sendTo.value;
var subject = document.formSendMail.subject.value;
var textMessage = document.formSendMail.textMessage.value;
var captcha = document.formSendMail.captcha.value;
var parameters = "checkFormSendMail=" + checkFormSendMail + "&sender=" + sender + "&sendTo=" + sendTo + "&subject=" + subject + "&textMessage=" + textMessage
+ "&captcha=" + captcha;
ajaxRequest.open("POST", "index.php", true);
ajaxRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
ajaxRequest.send(parameters);
ajaxRequest.onreadystatechange = function()
{
if (ajaxRequest.readyState == 4)
{
if (ajaxRequest.status == 200)
{
document.getElementById("divFormMail").innerHTML = ajaxRequest.responseText;
//document.getElementById("divUploadFile").style.display = "none";
}
else
{
document.getElementById("divFormMail").innerHTML = "An error has occured making the request";
}
}
else
{
document.getElementById("divFormMail").innerHTML = '<img src="img/Loading.gif"> Loading Content...';
}
}
}
// AJAX
Come devo fa'?