Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2007
    Messaggi
    489

    salvare form prima di un redirect

    ciao a tutti!

    ho una pagina con la seguente struttura:


    [textbox]
    [textbox]
    [button]
    [submit]



    il submit invia i dati che vengono salvati nel database, il button esegue un redirect.

    funziona tutto, il mio problema peró é che se uno compila i textbox e poi clicca sul button senza passare per il submit perde i dati.

    cé un modo per salvare i dati nel database prima di fare il redirect? o un qualsiasi altro modo per evitare di perdere i dati non inviati?

    grazie

    ciao

    igor

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2008
    Messaggi
    86

    idea!

    Salve, prova a fere il redirect dalla pagina di memorizzazione dei dati; o meglio il form invia i dati ad una 'insert into' che li inserisce in db e subito dopo esegui il comando redirect.

    <script type="text/javascript">
    <!--
    function doRedirect() { //funzione con il link alla pagina che si desidera raggiungere
    location.href = "http://www.indirizzo_pagina.it/";
    }
    doRedirect();
    //-->
    </script>

    Spero di esserti stato utile.

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2007
    Messaggi
    489
    ciao!

    grazie ma credo di non aver capito..


    io la pagina ora l ho cosi:


    codice:
    if ($_POST['submitted']=="1")
         {fai i dovuti controlli e scrivi nel database}
    
    <html>
    <head>
    
     <script>
       funzione con redirect
     </script>
    
    </head>
    
    
    <body>
    
       <form method="post" action="?id=5">
          [textbox]
          [textbox]
          [button]
          [submit]
       </form>
    
    </body>
    </html>
    ma non credo di aver capito cosa intendi fare. come dovrei modificarla?

    grazie per l aiuto

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2008
    Messaggi
    86
    ciao, prova allora cosi:

    Codice PHP:
    <html>
    <
    head>

     <
    script>
       
    funzione con redirect
     </script>

    if ($_POST['submitted']=="1")
         {fai i dovuti controlli e scrivi nel database

    ** esattamente quì richiama la funzione di redirect **
         
         }
    </head>


    <body>

       <form method="post" action="?id=5">
          [textbox]
          [textbox]
          [button]
          [submit]
       </form>

    </body>
    </html> 
    Saluti.

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2007
    Messaggi
    489
    ora ho capito cosa intendi..

    non funziona perche il button nel "onlick" esegue la funzione in questa maniera: redirect(url)

    percio se al posto del button metto un submit non riesco a definire dove mandarlo dato che il target del submit é definito nel form. cioé non riesco a caprie se ha premuto "button" o "salva"...

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2007
    Messaggi
    489
    si potrebbe risolvere cambiando il valore "action" del form tramite javascript.

    é possibile?

  7. #7
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    se hai un button:

    onclick="tuaFunzione();this.form.action='altrapagi na.php';this.form.submit()"

    se hai un submit:

    onclick="tuaFunzione();this.form.action='altrapagi na.php';"

    Questo in linea di massima, occorre vedere la situazione reale della pagina per una soluzione certa.

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  8. #8
    Originariamente inviato da sharky86
    percio se al posto del button metto un submit non riesco a definire dove mandarlo dato che il target del submit é definito nel form. cioé non riesco a caprie se ha premuto "button" o "salva"...
    SBAGLIATO!
    Tu puoi mettere quanti submit vuoi, e puoi ovviamente capire QUALE submit &egrave; stato premuto!
    Esempio:
    codice:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" lang="it" xml:lang="it">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Test</title>
    </head>
    <body>
    <form method="get">
    <label for="Campo1">Campo1:</label><input type="text" id="idCampo1" name="Campo1" />
    
    
    <label for="Campo2">Campo2:</label><input type="text" id="idCampo2" name="Campo2" />
    
    
    <label for="Invia">Invia:</label><input type="submit" id="idInvia" name="Invia" value="Invia"/>
    
    
    <label for="Salva">Salva:</label><input type="submit" id="idSalva" name="Salva" value="Salva"/>
    
    
    </body>
    </html>
    Se premo il pulsante Invia otterr&ograve;:
    codice:
    test.html?Campo1=valore1&Campo2=valore2&Invia=Invia
    mentre se premo il pulsante Salva otterr&ograve;:
    codice:
    ciao.html?Campo1=valore&Campo2=valore2&Salva=Salva
    Come vedi viene inviato valorizzato solo il pulsante submit che &egrave; stato premuto.
    Poi sta a te, con il tuo linguaggio lato server, testare quale &egrave; 'pieno'.
    in php, per esempio:
    Codice PHP:
    if (isset($_GET['Salva'])) {
         
    // ho premuto salva
    }
    else {
        if (isset(
    $_GET['Invia'])) {
            
    // ho premuto Invia
        
    }
    }
    // .. eccetera 
    HTH
    Zappa
    [PC:Presario 2515EU][Cpu:P4@2.3GHz][Ram: 512M][HDU:80G@5400 RPM]
    [Wireless:LinkSys][OS: Ubuntu 9.04 - Jaunty Jackalope]

  9. #9
    Utente di HTML.it
    Registrato dal
    Dec 2007
    Messaggi
    489
    ciao!

    grazie a tutti e due..

    le vostre risposte sono sufficenti per risolvere il problema.

    grazie mille

    ciao

    igor

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 © 2026 vBulletin Solutions, Inc. All rights reserved.