Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    536

    radio button e diversa pagina php

    Ciao
    E' possibile fare in modo che selezionando uno dei 2 radio button inseriti in una pagina web (php o html) una volta cliccato su un tasto di tipo submit si possa rinviare a una pagina piùttosto che ad un'altra?

    In pratica vorrei che se seleziono un radio button quando faccio submit mi si rinvii ad una pagina php, se clicco sull'altro mi si rinvii ad un'altra pagina.
    Come?
    Grazie


    ps: oppure la stessa pagina ma che richiami una funzione diversa..devo usare l'isset nella pagina php?

  2. #2
    codice:
    <?php
    
    if ((IsSet($_POST['submit_redirect'])) && ($_POST['submit_redirect'] == "Invia")) {
     
     	header("Location: $_POST[pagina]");
     
     }
    ?>
    
    <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST" name="redirect">
    <input type="radio" value="pagina1.php" name="pagina" checked/> Pagina1 
    
    <input type="radio" value="pagina2.php" name="pagina" /> Pagina2 
    
    
    <input name="submit_redirect" type="submit" id="submit_redirect" value="Invia" />
    </form>

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    536
    Originariamente inviato da Darsch2501
    codice:
    <?php
    
    if ((IsSet($_POST['submit_redirect'])) && ($_POST['submit_redirect'] == "Invia")) {
     
     	header("Location: $_POST[pagina]");
     
     }
    ?>
    
    <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST" name="redirect">
    <input type="radio" value="pagina1.php" name="pagina" checked/> Pagina1 
    
    <input type="radio" value="pagina2.php" name="pagina" /> Pagina2 
    
    
    <input name="submit_redirect" type="submit" id="submit_redirect" value="Invia" />
    </form>
    grazie, provo.
    E per il caso in cui volessi indirizzare alla stessa pagina che rilevi se è stato selezionato un button o l'altro (e quindi inserendo poi l'IF che richiami una funzione o un'altra)?
    ciao

  4. #4
    E per il caso in cui volessi indirizzare alla stessa pagina che rilevi se è stato selezionato un button o l'altro (e quindi inserendo poi l'IF che richiami una funzione o un'altra)?
    ciao
    Stessa idendica cosa, solo che al posto di header("Location: $_POST[pagina]"); ci metti la condizione IF che determinera' cosa fare in base alla selezione dell'utente.

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    536
    Originariamente inviato da Darsch2501
    Stessa idendica cosa, solo che al posto di header("Location: $_POST[pagina]"); ci metti la condizione IF che determinera' cosa fare in base alla selezione dell'utente.
    scusami, forse non ho capito bene io.
    Mi riferivo alla pagina alla quale si rinvia non a quella dove è inserito il button e i radio button. Si usa un isset..non ricordo
    Grazie

  6. #6
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    536
    Originariamente inviato da Darsch2501
    codice:
    <?php
    
    if ((IsSet($_POST['submit_redirect'])) && ($_POST['submit_redirect'] == "Invia")) {
     
     	header("Location: $_POST[pagina]");
     
     }
    ?>
    
    <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST" name="redirect">
    <input type="radio" value="pagina1.php" name="pagina" checked/> Pagina1 
    
    <input type="radio" value="pagina2.php" name="pagina" /> Pagina2 
    
    
    <input name="submit_redirect" type="submit" id="submit_redirect" value="Invia" />
    </form>
    ho provato a integrare questo codice con la mia pagina, ma poi non funzionano più il resto del codice.
    ciao

  7. #7
    Mi sono perso ... tu vuoi che quando premi il tasto di invio lui mandi i dati ad un'altra pagina PHP che li elabora? In tal caso devi cambiare la riga:

    codice:
    <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST" name="redirect">
    in:

    codice:
    <form action="pagina.php" method="POST" name="redirect">
    (mettendo al posto di "pagina.php" il nome della tua pagina)

    e togliere il blocco:

    codice:
    <?php
    
    if ((IsSet($_POST['submit_redirect'])) && ($_POST['submit_redirect'] == "Invia")) {
     
     	header("Location: $_POST[pagina]");
     
     }
    ?>
    mettendolo nell'altro file che ricevera' i dati...

  8. #8
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    536
    Originariamente inviato da Darsch2501
    Mi sono perso ... tu vuoi che quando premi il tasto di invio lui mandi i dati ad un'altra pagina PHP che li elabora? In tal caso devi cambiare la riga:

    codice:
    <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST" name="redirect">
    in:

    codice:
    <form action="pagina.php" method="POST" name="redirect">
    (mettendo al posto di "pagina.php" il nome della tua pagina)

    e togliere il blocco:

    codice:
    <?php
    
    if ((IsSet($_POST['submit_redirect'])) && ($_POST['submit_redirect'] == "Invia")) {
     
     	header("Location: $_POST[pagina]");
     
     }
    ?>
    mettendolo nell'altro file che ricevera' i dati...
    Mi interessavano entrambe le soluzioni per curiosità (poi avrei valutato quella migliore x me).
    Quella che tu proponi adesso rimanda ad un'altra pagina e qui , a secondo del radio button selezionato, si comporterà in un modo o nell'altro. Che codice devo usare in questo caso?

    Nella prima soluzione quella con il redirect andava bene, ma appunto il redirect mi faceva perdere i dati da inviare e poi c'era un problema con altro codice javascript inserito nella pagina del form (in pratica uno script non funzionava..non ho capito il perchè)
    Grazie

  9. #9
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    potresti usare GET nel form ed in base alla checkbox spuntata fai un

    header ("URL=pagina.php?$_REQUEST");

    Codice PHP:
    <?php

    if (IsSet($_GET['submit_redirect'])) {
     
         
    header("Location: $_GET[pagina]?$_REQUEST");
     
     }
    else
    {
    ?>

    <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="GET" name="redirect">
    <input type="radio" value="pagina1.php" name="pagina" checked/> Pagina1 

    <input type="radio" value="pagina2.php" name="pagina" /> Pagina2 


    <input name="submit_redirect" type="submit" id="submit_redirect" value="Invia" />
    </form>
    <?
    }
    ?>
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

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.