Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Apertura popup da form che non si può toccare

    Giorno a tutti. Questo è il mio primo post e vorrei salutare tutti quanti

    Allora vi espongo il mio piccolo problema.
    Ho un form come questo:

    Codice PHP:
    <form action="http://www.miodominio.it/popup.php" id="form">                <div>                 <input type="hidden" name="1" value="value1" />                 <input type="hidden" name="2" value="value2" />                 <input type="hidden" name="3" value="value3" />                 <input type="text" name="4" size="55" />                 <input type="submit" name="5" value="Cerca" />                </div>  </form
    che non posso toccare in alcun modo (non posso aggiungerci ne toglierci nulla) per il semplice motivo che è un form datomi da altro sito che mi obbliga a non toccarlo.

    Ora a me interessa tracciare chi usa questo form e registrarne l'evento nel db.
    Il form è scritto in un file php e vorrei che i risultati del form (questi ottenuti da un'altro script in js datomi dal sito di prima che ne fà vedere i risultati) si vedessero in un popup, come vedete dall'action del form.
    Ho messo in questo file popup.php il necessario per registrarne l'evento con query mysql, il tutto girando sulle variabili get che mi produce il form suddetto.

    Cercando sul web mi sono imbattuto in vari script js e ne ho costruito uno che metto prima del form:

    Codice PHP:
    <script type="text/javascript">    window.onload extLinks;    function extLinks() {   if (!document.getElementsByTagName) return;   var anchors document.getElementsByTagName("FORM");  for (var i=0i<anchors.lengthi++) {       var anchor anchors[i];       if (anchor.getAttribute("action") &&           anchor.getAttribute("id") == "form")       anchor.onsubmit = function() {          extPop(this.action);          return false;          };       }   }  function extPop(url) {  newWin window.open(url,"_blank","top=0,left=0,height=500,width=600,location,scrollbars,directories,menubar,resizeable,status,toolbar");  }  </script> 
    Con questo riesco a aprire il popup anche se ci sono blocchi popup settati dal browser e la pagina caricata nel popup è appunto popup.php.

    Il problema ora sorge qui; perchè ok che mi apre la pagina desiderata, ma le variabili get del form prodotte dagli input del form nn vengono passate assieme all'url, vanificando le query che stanno nel popup.php per il tracciamento.

    Ho provato molto, ma data la mia poca esperienza in js è come cercare l'ago in un pagliaio :P
    Il mio pensiero è che se lo script cerca il termine FORM e ne acquisisce i campi con i valori, se si riuscisse a recuperare i vari input con i loro valori settandone le opportune variabili e quest'ultime ancorandole nel window.open per farle passare come comuni variabili get.

    Grazie in anticipo per qualsiasi aiuto o suggerimento.

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998

    Re: Apertura popup da form che non si può toccare

    Non testato
    Codice PHP:
    .....
    anchor.onsubmit = function() {          
         
    extPop(this);
    };
    function 
    extPop(obj) {  
         
    newWin window.open("","NomePop","top=0,left=0,height=500,width=600,location,scrollbars,directories,menubar,resizeable,status,toolbar");
         
    obj.target "NomePop"
    }
    ..... 
    Occhio al NomePop e al return false da togliere

    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

  3. #3


    Funziona. Grassie grassie grassie grassie.

    Ma una domanda, se sei tanto cortese Br1 da spiegarmi il motivo di quelle modifiche, sai vorrei capire.

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