Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2006
    Messaggi
    27

    Passare dei valori ad una pagina di un frameset

    Salve a tutti, sto scrivendo un applicazione per il web e sto usando i frameset. Ho serie difficoltà a passare dei valori da una pagina nel top frame, ad un' altra nel main frame, facendo ricaricare quest' ultima nel mainframe. Il pezzo di codice che non mi funziona è il seguente:

    <script type="text/javascript ">
    function Invia (){
    var a="Luca";
    location.href='pagina.php?a='+a;

    }
    </script>

    Il problema è che i valori li passo, ma la pagina di destinazione si carica nel frame di partenza(topFrame). In sostanza dovrei dargli target="mainFrame". Ovviamente questo è html, io invece glielo dovrei dire in javascript.

    Se qualcuno di voi sa darmi un consiglio su come risolvere questo problema mi sarà di grande aiuto.
    Grazie in anticipo.
    Luca

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    prova cosi:
    top.location.href='pagina.php?a='+a;
    oppure:
    top.forms['qui_metti_nome_frame'].location.href='pagina.php?a='+a;
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2006
    Messaggi
    27
    Grazie mille. Ho risolto

    Luca

  4. #4
    Utente di HTML.it
    Registrato dal
    Jan 2006
    Messaggi
    27
    Grazie di nuovo Andrea,
    ma avrei bisogno di un altro aiuto.
    Provo a spiegarti quale è il problema che ora sto incontrando.

    In pratica, io utilizzo i frame e su un frame(topFrame) ho i comandi(salva, nuovo, modifica,ecc....), mentre su di un altro(mainFrame) ho la pagina che contiene i dati. Ora, quando clicco su salva voglio fare l'insert dei dati contenuti nella pagina visualizzata nel mainFrame, senza che quest'ultima si ricarichi e mi resetti i campi. Qual'è il modo più corretto per farlo?
    Per bypassare questo problema, per adesso ho inserito, nella pagina che contiene i dati, una funzione che viene chiamata dall' evento unload (window.onunload) della pagina stessa.
    In questa funzione, memorizzo i dati, li passo ad un'altra pagina php che non viene visualizzata dove vi recupero i campi tramite $_GET e faccio l'insert in una tabella temporanea.Poi passo il controllo di nuovo alla pagina precedente. Per ora ho provato con una sola variabile e funziona;ma i campi che devo gestire sono all'incirca un centinaio, funzionerà lo stesso(presumo). Ma dato che non ho tanta esperienza nella programmazione del web, prima di commettere eventuali errori di concetto, vorrei sentire un parere di una persona più esperta.
    Insomma sto seguendo il metodo migliore?
    Allego il pezzo di codice in questione.
    Grazie in anticipo,
    Luca

    Pagina: dati.php (mainFrame)

    <script type="text/javascript">

    window.onunload= function invia(){
    var nome=document.form1.nome.value;
    location.href='tempvar.php?nome='+nome;
    }
    </script>

    <input type="text" name="nome">
    ---------------------------------------

    Pagina tempvar.php (non visualizzata)

    <script type="text/javascript">

    function vai(){
    window.open('dati.php','mainFrame');
    }

    </script>

    <?php

    $nome=$_GET['nome'];
    // faccio l'insert nella tabella temporanea
    //.....

    echo "<script type='text/javascript'>\n";
    echo "vai();";
    echo "</script>";
    ?>

  5. #5
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Il problema secondo me è che il metodo querystring supporta fino a 255 caratteri es (mia_pagina.php?azione=qui_al_massimo_posso_inseri re_255_caratteri) detto questo o aggiorni l'iframe (consigliato) in metodo post oppure utilizzi ajax (per un neofita lo sconsiglio)vedi tu.


    P.S. se opti per ajax trovi ottime guide qui
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  6. #6
    Utente di HTML.it
    Registrato dal
    Jan 2006
    Messaggi
    27
    Andrea,
    grazie per il supporto.
    Ma avrei bisogno di un esempio pratico dell' utilizzo del metodo post da javascript (dato che sfrutto l'evento window.onunload per memorizzare i dati).
    Saluti
    Luca

  7. #7
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Originariamente inviato da papps
    Andrea,
    grazie per il supporto.
    Ma avrei bisogno di un esempio pratico dell' utilizzo del metodo post da javascript (dato che sfrutto l'evento window.onunload per memorizzare i dati).
    Saluti
    Luca
    Perdonami se ti sembrerò brusco ma a mio avviso ti mancano i fondamentali del javascript nel link che ti ho passato prima trovi ottime guide, quello che chiedi non è permesso in javascript.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

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.