Visualizzazione dei risultati da 1 a 3 su 3

Discussione: response.redirect

  1. #1

    response.redirect

    Sto cercando di far aprire in una finestra pop up, come conseguenza della pressione di un bottone di un form, una pagina asp che raccoglie il voto di un sondaggio e o rinvia alla pagina dei risultati o a quella in cui si dice che si è già votato usando response.redirect.
    Il problema è che quando si preme il bottone la stessa pagina si apre sia nel pop up che nella stessa finestra in cui è inserito il sondaggio.
    Di seguito il codice del form per aprire il popup:
    codice:
    <form method="get"  target="poll" onSubmit="window.open('vota.asp', 'poll', 'toolbar=0,location=0,status=0,menubar=0,scrollbars=1,resizable=1,width=505,height=400')">
    e il codice della pagina asp che deve aprirsi nella finestra pop up:
    codice:
    <%@LANGUAGE="JAVASCRIPT" CODEPAGE="1252"%>
    <%
       // Reperisco dal modulo il voto espresso e lo memorizzo in una variabile di tipo QueryString
       var vota = new String(Request.QueryString("vota"));
    
       // La variabile "controlla" mi servirà in seguito per verificare se il cookie è presente
       // e verificare se è già stato espresso o meno un voto
       var controlla = Request.Cookies("CookieSondaggio");
    
       // Setto la data di scadenza del cookie all'ora attuale, quindi il cookie morirà appena
       // verrà terminata l'esecuzione del browser, dando fine alla sessione in corso
       var scadenza = new Date();
       Response.Cookies("CookieSondaggio") = scadenza.toLocaleString();
    
       // Controllo se il cookie è "diverso da vuoto" ovvero se è già presente,
       // se lo è rimando alla pagina "errore.htm"
       if (controlla != "") {
           Response.Redirect("errore.htm");
       }
       // Se il cookie non è presente viene effettuato l'inserimento sul database
       // ed il reindirizzamento alla pagina di consultazione
       else {
          var Cn = new ActiveXObject("ADODB.Connection");
          var Rs = new ActiveXObject("ADODB.Recordset");
          var Sc = "driver={Microsoft Access Driver (*.mdb)};dbq=" + Server.MapPath("mdb-database/sondaggio.mdb");
              Cn.Open(Sc);
                 Rs.Open("voti",Cn,3,3);
                    Rs.AddNew();
                       Rs("voto") = vota;
                    Rs.Update();
                 Rs.Close();
              Cn.Close();
          Response.Redirect("sondaggio.asp");
       }		
    %>
    Grazie a chiunque voglia aiutarmi.

  2. #2
    Utente di HTML.it L'avatar di kluster
    Registrato dal
    Jul 2003
    Messaggi
    1,288
    ho fatto una prova in locale e non pure a me dava problemi anche con il return false che no passa i parametri

    Prova a mandarli direttamente da funzione javascript se non sono troppi i parametri

    Esempio
    codice:
    <form name="form">
    <input type="text" name="sondaggio">
    <input type="text" name="vota">
    <input type="button" value="VOTA" onClick="apriSondaggio()">
    </form>
    nell'head
    codice:
    function apriSondaggio()
    {
    var form = document.form;
    inputsondaggio = form.sondaggio.value;
    inputvota = form.voto.value;
    window.open('vota.asp?vota='+ inputvota + '&sondaggio=' + inputsondaggio + ', 'poll','toolbar=0,location=0,status=0,menubar=0,scrollbars=1,resizable=1,width=505,height=400')
    }
    cosi aggiri l'ostacolo , di + nin zo

  3. #3
    grazie per l'aiuto.

    cmq mi sono accorto che se scrivo action="" funziona

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.