Newsgroup: it.comp.lang.javascript
Titolo: problema jscript-php

Salve a tutti.
Tramite window.opener.location.reload(true) faccio il refresh della
finestra padre alla chiusura della finestra figlio, solo che la
finestra padre (basandosi su una variabile proveniente da quella
ancora precedente) mi propone il solito alert "non è possibile
ricaricare la pagina senza inviare di nuovo etc etc".
Ora, io posso anche portarmi dietro questa variabile fino all'ultima
finestra figlio (quella che pilota il refresh) con dei campi hidden,
ma come la mando alla finestra padre attraverso
l'opener.location.reload?
Grazie.

Bubba wrote:

Se ti da il messaggio "non è possibile ricaricare.."
Significa che ci sono delle varibili POST.
Devi fare in modo che non ci siano.
Immagino che al momento della attivazione di opener.location.reload
le variabili POST siano state inviate già...
In tal caso
ci sono diversi modi, ad esempio mettere un
header("Location: stessa pagina...)
sulla pagina padre dopo l'invio delle variabili, in modo da fare un 
refresh via server (al client non arriva neppure la pagina, quindi non 
può rivederla)
oppure nella pagina figlio al posto di opener.location.reload
puoi usare opener.location.href= "pagina padre.php"
così non ricarica le variabili che si è portato dietro.
Spero di aver capito e di essermi fatto capire ;-)
Ciao
Marcello

Spero di aver capito e di essermi fatto capire ;-)
Perfettamente, tant'č che adesso funziona.
Nella finestra figlio, al posto di opener.location.reload ho messo
window.opener.location.href='pagina.php?submit=" . $submit . "'
Cioč gli mando la variabile di cui ha bisogno attraverso una form GET
e non si lamenta piů.
Grazie mille per l'imbeccata.

 wrote:
Scusa se ti assillo, ma avrei un'altro problema del genere.
Al verificarsi dell'onchange di una select, vorrei far aprire una
finestra figlio nella quale poter effettuare altre scelte basate sul
valore selezionato nella prima select (quella della finestra padre).
praticamente si tratta di trasmettere il valore selezionato alla
finestra figlio.
In una faq ho letto che quel valore si ottiene da
document.nome_form.nome_select.options[document.nome_form.nome_select.selectedIndex].text
solo che quando finestra figlio vado a vedere la variabile $_GET che
dovrebbe contenere il valore, ottengo quello che ho scritto sopra,
lettera per lettera, cioč la definizione, non il valore.
Che faccio?

[...] nome_form.nome_select.selectedIndex].value
Idem come sopra, solo che alla fine scrive value anziché text.
posto il codice così forse vedete qualcosa che a me è sfuggito.
PADRE:
<form name="form1" method="get" action="appro_submit_1.php">
[...]
$field = "destinatario";
echo "<select name=\"" . $field . "\"
onChange=\"window.open('appro_submit_dest.php?destinatario=document.form1."
. $field . ".options[document.form1." . $field .
".selectedIndex].value', '', 'height=200, width=500, toolbar=no,
resizable=no, scrollbars=no')\">";
FIGLIO:
echo $_GET[destinatario];

r=no,resizable=no,scrollbars=no')\">";
Niente da fare.
Anche così $_GET[destinatario] in appro_submit_dest.php non
restituisce nulla.
Una curiosità: mi spiegheresti quel segno + prima di "document"?
Grazie.

Sbagli qualcos'altro. 
Non mettevo value in <option>.
Scusa e grazie ancora

Già che ci siamo, dato che di javascript (come penso si sia capito)
non so niente, mi consiglieresti un buon libro?
Grazie.