Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2011
    Messaggi
    5

    form che reindirizza ad una pagina

    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

  2. #2
    Utente di HTML.it
    Registrato dal
    May 2011
    Messaggi
    5
    grazie mille x l'aiuto =_='

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.