Visualizzazione dei risultati da 1 a 4 su 4

Discussione: option con javascript

  1. #1

    option con javascript

    ho fatto una <option> dove carico le province
    voglio che sotto ci sia un'altra <option> dove ci sia l'elenco dei paesi in relazione alla provincia scelta
    Bisogna usare Javascript vero? no nè possibile in php
    qualcuno mi può passare il codice?

  2. #2
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Potrebbe assomigliare a questo (non testato)

    File : test2088.php
    codice:
    <?php
    $_POST     = isset($_POST) ? $_POST : $HTTP_POST_VARS;
    $provincia = isset($_POST['provincia']) ? $_POST['provincia'] : "";
    ?>
    
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    
    <html>
    <head>
    <title>Untitled</title>
    <script language="JavaScript" type="text/javascript">
    <!--
    function testa() {
     if (document.getElementById('provincia').value == "none") {
      alert('devi selezionare una provincia");
     } // if (document.getElementById('provincia').value == "none")
     return true;
    } // function testa()
    //-->
    </script>
    
    </head>
    <body>
    
    <form action="test2088.php" method="post" onsubmit="return testa()">
     <select name="provincia" id="provincia">
      <option value="none">Scegli una provincia</option><?php
    	$query = "select sigla, nome_provincia from tab_provincia order by nome_provincia";
    	$res   = mysql_query($query);
    	while (list($sigla,$nome_provincia) = mysql_fetch_array($res)) 
    	{
    	$selected = $sigla == $provincia ? "selected" : "";?>
    	<option value="<?php print $sigla ?>" <?php print $selected ?>><?php print $nome_provincia; ?></option><?php 
    	} // while (list($sigla,$nome_provincia) = mysql_fetch_array($res))?>
     </select>
     <input type="submit" value="Invia">
    </form>
    
    <?php
    if (!empty($provincia)) { ?>
    
     <select name="citta" id="citta"><?php 
    	$query = "select citta from tab_citta where sigla='$provincia' order by citta";
    	$res   = mysql_query($query); 
    	while (list($citta) = mysql_fetch_array($res)) 
    	{	?>
    	<option value="<?php print $citta ?>"><?php print $citta; ?></option><?php 
    	} // while (list($citta) = mysql_fetch_array($res)) ?>
     </select><?php 
    } // if (!empty($provincia)) ?>
    </body>
    </html>

  3. #3

    onsibmit

    non capisco le prime 2 righe e no nconosco il ruolo di onsubmit
    puoi spiegarmelo?

  4. #4
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372

    Re: onsibmit

    Originariamente inviato da sandroacchiardi
    non capisco le prime 2 righe e no nconosco il ruolo di onsubmit
    puoi spiegarmelo?
    La prima riga serve a gestire le versioni 4.0 di php che non hanno l'array $_POST
    La seconda serve a testare se la variabile post è stata settata. In effetti con la modalità error_reporting = E_ALL se il posto di un array non è definito php crea un notice o un warning (non ricordo)

    Il ruolo di onsubmit è di potere esguire certi controlli prima di mandare la pagina.
    Nel nostro caso, onsubmit richiama una funzione che testa il valore della select delle province. se il valore è uguale a none allore nessuna provincia è stata selezionata e quindi si fa un bel return false per impedire che i dati siano mandati al server.

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.