Salve ragazzi,
allora ho uno "step-form" ogni domanda viene fatta in una pagina diversa e i dati sono salvati in sessione anche se la cosa è irrilevante. Dal lato server side funziona. Ora stò aggiungendo un pò di javascript e httpRequest per rendere il sistema piu immediato.
il js finora scritto è questo:
Codice PHP:
function checkFields() {
var importo = document.step2.importo;
var consumo = document.step2.consumo;
alert('check field');
oHttpReq = ajaxObject.__callXMLhttp();
if ( oHttpReq ) {
var url = 'checkError.php';
var dataSendPost = "importo=" + escape(importo.value) + "&consumo=" + escape(consumo.value);
alert(dataSendPost);
oHttpReq.open( "POST", url, true );
oHttpReq.onreadystatechange = displayDetails;
oHttpReq.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
oHttpReq.send( dataSendPost );
}
}
function displayDetails() {
if ( oHttpReq.readyState == 4 && oHttpReq.status == 200 ) {
helpDiv = document.getElementById('help');
helpDiv.innerHTML = oHttpReq.responseText;
alert(oHttpReq.responseText);
}
}
function initPage() {
if ( document.step2 ) {
checkFields();
}
}
window.onload = initPage;
per prima cosa devo dire che la pagina per la gestione degli errori, tale "checkError.php" viene richiamata con successo..
il punto è che se c'è un errore il sistema se ne fotte e passa direttamente allo step successivo senza fermarsi e visualizzare l'errore.
Lo step successivo quindi la action del form è "index.php?s=3" VOLUTAMENTE diverso dalla pagina di gestione errori per js per non avere problemi server side.
Come faccio a dire al browser che se c'è l'errore, quindi se la pagina checkError.php mi ritorna una stringa, il form non effettua il submit e mi visualizzi l'errore sulla pagina???
3000€ per chi mi aiuta..