Buongiorno a tutti,
Ho iniziato da poco a studiare il linguaggio JavaScript, la libreria jquery e la tecnologia Ajax.
Vorrei effettuare una chiamata Ajax. Il linguaggio lato server è php e utilizzo un server Apache. Per una chiamata di tipo get non ho avuto problemi, mentre per la chiamata di tipo post per inviare dati immessi in un form sì.
Questa è la chiamata Ajax di tipo GET:
$(document).ready(function () {
$("#registrazioneUtente").click(function () {
inviaControllerTask('registrazione', 'utente', '#contenutiAjax' );
});
});
function inviaControllerTask(controller1, task1, ajaxdiv)
{
$.ajax({
// definisco il tipo della chiamata
type: 'GET' ,
// specifico la URL della risorsa
url: controller1 + '/' + task1,
// imposto azione per il caso di successo
success: function (datiRisposta)
{
alert(datiRisposta);
$(ajaxdiv).html(datiRisposta);
}
});
}
Mentre questo è il codice per effettturare la chiamata Ajax di tipo POST:
$(document).ready( function(){
$('#submitRegistrazioneUtente').click(function(event){
event.preventDefault();
inviaDatiRegistrazione('#inserisciUtente','registrazione', 'utente', '#contenutiAjax' );
});
});
function inviaDatiRegistrazione(id, controller1, task1, ajaxdiv)
{
//recupera tutti i valori del form automaticamente
var dati = $(id).serialize();
$.ajax({
type: 'POST',
url: controller1 + '/' + task1,
data: dati,
success: function()
{
alert("Dati clinica inviati per effettuare la registrazione");
},
error: function()
{
alert("Chiamata fallita, si prega di riprovare...");
}
});
}
Ho incluso il file JavaScript che gestisce il click sul tasto submit nell'head del file html, sia la form che il tasto submit possiedono un id che utilizzo nel file javascript per la selezione.
Quando mando in run, l'url risulta
POST "
http://www.miosito.it/index.ph#"
e non quella inserita nella funzione Ajax:
POST "
http://www.miosito.it/registrazione/utent"
Inoltre lo script php non trova controller e task. Qualcuno può spiegarmi cosa sto sbagliando gentilmente? Può essere che non sto passando i dati allo script?
Vi ringrazio anticipatamente per l'aiuto.