Newsgroup: it.comp.lang.javascript
Titolo: piccolo problema

Ciao a tutti,
in una pagina web dinamica, al verificarsi di determinate condizioni
(esempio un form inviato, vorrei che venisse eseguita (congiuntamente
all'apertura della pagina (la stessa) la funzione:
MM_openBrWindow('./report.php?id=1','','width=640,height=460,resizable=yes')
;
meglio definita come:
function MM_openBrWindow(theURL,winName,features) { //v2.0
    window.open(theURL,winName,features);
  }
ho provato sul body, oppure richiamandola da <script etc etc>
MM_openBrWindow(etc etc) </script> ma nulla da fare,  chi mi può dare una
mano a risolvere questo problema?
Grazie in anticipo,
Cooper.
-- 
[web:]  
http://www.blueware.it
 (aggiornato!)
[icq:]  146 781 935
[msn:] 
coo...@blueware.it


Mmm, perň io non ho form da riempire..... č lo stesso?



Ok, allora la pagina è: INDEX.PHP dinamica. Al primo caricamento viene
proposto un form dove l'utente inserisce i dati e clicca sul button per
procedere.
Quando l'utente clicca sul button la pagina viene ricaricata a quel punto
tramite PHP provvedo alla lettura dei parametri immessi nel form precedente
dall'utente.
I parametri vengono quindi validati lato server. Se la validazione ha
successo deve eseguire (sempre durante il caricamento A (Chiamiamo cosi il
blocco A) se invece non ha successo (perchè magari si incontrano errori etc,
allora visualizza un messaggio di errore e quindi sempre continuando
ripropone il form.
Quando si entra nel blocco A, (ovvero quando non sono stati riscontrati
errori nella validazione) allora deve aprire un popup e successivamente
riproporre pagina iniziale con il relativo form (in modo analogo al caso con
in cui si fosse presentato un errore).
In altre parole, nel caso si presenta un errore visualizza il messaggio e il
form mentre se non si presenta un errore, visualizza la popup e il form,
ovvero in caso tutto va bene, al posto del messaggio di errore visualizza la
popup e viceversa e ricarica la pagina INDEX.PHP visualizzando il form.
Spero che cosi abbia reso meglio l'idea, grazie ancora per il tuo
interessamento.
Cooper.
PS: Avevo pensato con un reload, quindi operare sul body (lato server)
operando qualcosa del tipo:.
    if (errore) {
     // stampa body normale
     print "<body etc etc>";
    } else {
    // stampa body con apertura popup onload
   print "<body onload=\"onLoad etc etc \";
   }
ma non produce alcun effetto.



Cosi funziona (ho trovato l'errore, una virgoletta fuori posto nel mio
codicillo), però mi ritrovo con l'inconveniente che viene interpretrato come
popup da quelle applicazioni che mirano a bloccarli.
Cosa che non succede invece quando all'interno di un form ho qualcosa del
tipo:
<input etc etc
onlick="MM_openBrWindow('./report.php?id=1','','width=640,height=460,resizab
le=yes');">
infatti in quel caso non viene bloccata.
Uhm c'è qualche compromesso? (Altrimenti mi toccherebbe mettere un avviso
sul sito in evidenza in cui si chiede di "rimuovere la protezione dai popup
per un funzionamento corretto del sito".... e non sarebbe "professionale" ne
esteticamente bello...
Grazie ancora :)
Cooper.


 esteticamente bello...
se l'applicazione che blocca le popup ridefinisce il metodo window.open non
puoi farci proprio niente.
piuttosto potresti visualizzare il messaggio in un layer posizionato
dinamicamente, che mi sembra ancora piu' "professionale"
-- 
./artemis.alpeia

 Thanks.
sono perfettamente d'accordo con te nel condannare queste demonizzazioni.
Le popup in definitiva servono e impedirne l'apertura non giova proprio a
nessuno. L'approccio di mozilla mi sembra il piu' efficace e adattabile
alle esigenze dell'utente.
-- 
artemis::~alpeia