Trasferimento dati da un form ad una finestra popup

Discussioni legate a XHTML, CSS, Javascript

Moderatore: spacemarc

Rispondi
nino1
Membro junior
Messaggi: 18
Iscritto il: 23 ago 2009, 11:32

Trasferimento dati da un form ad una finestra popup

Messaggio da nino1 » 17 set 2009, 18:27

Salve,
il mio problema riguarda la trasmissione dati da una pagina contenente un form ed una finestra che si apre direttamente dalla pagina del form.
Piu' precisamente, mi interessa trasferire i valori del nome e del cognome nella finestra che viene aperta cliccando su un link nella pagina del form.

Questo e' parte del codice interessato (apertura finestra e dei due valori -nome e cognome-) del form:

Codice: Seleziona tutto

<head>
<SCRIPT LANGUAGE="JavaScript">
<!-- Inizio -->
function apri() {
var scw = screen.width;
   var sch = screen.height;
   var dasx= ((scw-500)/2); 
   var datop = ((sch-400)/2);
parametri = "toolbars=0, scrollbars=0, location=0, statusbars=0, menubars=0, resizable=0, width=500, height=400, left = " + dasx + ", top = " + datop; 
strg=window.open("finestra.html", "nuova", parametri);
}
// Fine -->
</script>
</head>
<body>
<form......>
........
<b>Nome: <input type="text" class="validate['required','length[3,-1]','nodigit'] text-input" name="nome" /> 				<b>Cognome: <input type="text" class="validate['required','length[3,-1]','nodigit'] text-input" name="cognome" />
........

<A HREF="javascript:apri()">apri finestra</a>
Qual'e' il codice che mi permette di far visualizzare nella finestra il nome e il cognome immesso nel form della pagina principale?

Grazie. :ciauz:

Avatar utente
spacemarc
Amministratore
Messaggi: 1076
Iscritto il: 22 giu 2002, 15:16
Località: Italia
Contatta:

Re: Trasferimento dati da un form ad una finestra popup

Messaggio da spacemarc » 17 set 2009, 21:16

Codice: Seleziona tutto

<html>
<head>
<title>form</title>
<script language="JavaScript" type="text/javascript">
   function formtopopup(){
	window.open('','popup','width=500, height=400');
	document.getElementById('nome_form').submit();
   }
</script>
</head>

<body>
<form id="nome_form" action="popup.php" method="post" target="popup">
Nome: <input type="text" name="nome" /> Cognome: <input type="text" name="cognome" />
<input type="submit" name="submit" value="Invia" onclick="formtopopup()" />
</form>
</body>
</html>
Nella finestra aperta dovrai usare l'array superglobale $_POST (php) per recuperare i valori immessi nei campi del form.

ciao
spacemarc.it

nino1
Membro junior
Messaggi: 18
Iscritto il: 23 ago 2009, 11:32

Re: Trasferimento dati da un form ad una finestra popup

Messaggio da nino1 » 18 set 2009, 18:07

Ciao, grazie per la risposta.
Pero' non e' esattamente quello che intendevo fare, cioe' il tuo script trasferisce i valori delle due variabili (nome e cognome) dopo aver effettuato l'invio del form, mentre io volevo (sempre che sia una cosa fattibile,in caso contrario chiedo scusa :D ) inviare questi due dati ad una finestra prima dell'invio del form (ad esempio, riempiti tutti i campi del form, e prima di inviarlo, il visitatore puo' cliccare su un link che apre la finestra contenente altre informazioni e in cui compare il suo nome e cognome -del tipo: "Ciao Nome Cognome, leggi queste info prima di inviarmi il form, grazie"-), dopodiche' il visitatore, dopo aver letto il testo, chiude la finestra e poi clicca sul bottone invio del form...
Sempre che sia possibile fare una cosa del genere... :mmm:

Grazie :ciauz:

Avatar utente
spacemarc
Amministratore
Messaggi: 1076
Iscritto il: 22 giu 2002, 15:16
Località: Italia
Contatta:

Re: Trasferimento dati da un form ad una finestra popup

Messaggio da spacemarc » 18 set 2009, 21:49

ok, allora occorre cambiare un pò le cose:

pagina col form

Codice: Seleziona tutto

<html> 
<head>
<title>form</title>
</head>
<body>
<form name="nome_form" action="pagina.php" method="post">
Nome: <input type="text" name="nome" /> Cognome: <input type="text" name="cognome" />
<input type="button" value="apri popup" name="bottone" onclick="window.open('popup.html','popup','width=400, height=500')" />
<input type="submit" value="invia form" name="submit" />
</form>
</body>
</html>
popup che mostrerà i dati inseriti, non serve php basta la proprietà window.opener

Codice: Seleziona tutto

<html> 
<head>
<title>popup</title>
</head>
<body>
<script language="JavaScript" type="text/javascript">
document.write (window.opener.document.nome_form.nome.value + ' ' + window.opener.document.nome_form.cognome.value);
</script>
</body>
</html>
spacemarc.it

nino1
Membro junior
Messaggi: 18
Iscritto il: 23 ago 2009, 11:32

Re: Trasferimento dati da un form ad una finestra popup

Messaggio da nino1 » 20 set 2009, 10:51

spacemarc ha scritto:ok, allora occorre cambiare un pò le cose:

pagina col form

Codice: Seleziona tutto

<html> 
<head>
<title>form</title>
</head>
<body>
<form name="nome_form" action="pagina.php" method="post">
Nome: <input type="text" name="nome" /> Cognome: <input type="text" name="cognome" />
<input type="button" value="apri popup" name="bottone" onclick="window.open('popup.html','popup','width=400, height=500')" />
<input type="submit" value="invia form" name="submit" />
</form>
</body>
</html>
popup che mostrerà i dati inseriti, non serve php basta la proprietà window.opener

Codice: Seleziona tutto

<html> 
<head>
<title>popup</title>
</head>
<body>
<script language="JavaScript" type="text/javascript">
document.write (window.opener.document.nome_form.nome.value + ' ' + window.opener.document.nome_form.cognome.value);
</script>
</body>
</html>
Ciao, ti ringrazio, in effetti questo codice funziona e corrisponde quasi alle mie esigenze.
C'e' solo una piccola cosa ancora: non e' possibile far aprire la finestra con i parametri che ho impostato (al centro dello schermo, ecc.) , invece di una popup? (Anche perche' credo che su molti browser ci sia un blocco sulle popup, quindi ci sarebbe un ulteriore problema per farle visualizzare...)

Ad esempio, e' possibile (tramite link o bottone contenuto nella pagina del form) richiamare la funzione apri() dello script che e' nella pagina del form per aprire la finestra (sfruttando la proprieta' window.opener da te indicata)?

Scusa la mia ignoranza in materia, io ho fatto qualche prova ma non ci sono riuscito :incupito:

Come al solito, ti ringrazio di cuore.
Ciao :ciauz:

Avatar utente
spacemarc
Amministratore
Messaggi: 1076
Iscritto il: 22 giu 2002, 15:16
Località: Italia
Contatta:

Re: Trasferimento dati da un form ad una finestra popup

Messaggio da spacemarc » 21 set 2009, 12:52

basta che nel tag <head> inserisci il tuo javascript per la funzione apri() e nel form sostituisci il bottone con
<a href="javascript:apri()">apri finestra</a>
spacemarc.it

nino1
Membro junior
Messaggi: 18
Iscritto il: 23 ago 2009, 11:32

Re: Trasferimento dati da un form ad una finestra popup

Messaggio da nino1 » 21 set 2009, 19:02

Ok,tutto a posto,
ti ringrazio,
ciao. :ciauz:

Rispondi

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite