Aggiunta funzionalità script php Regione Provincia Comune

Discussione in 'PHP' iniziata da micha93, 18 Aprile 2016.

  1. micha93

    micha93 Nuovo Utente

    Registrato:
    18 Aprile 2016
    Messaggi:
    12
    Mi Piace Ricevuti:
    1
    Punteggio:
    3
    Buongiorno , ho la necessità di chiedere un aiuto sullo sviluppo di una funzione che richiede l alimentazione di una variabile leggendo un db mysql al verificarsi di una condizione ..

    Vi allego il codice cosi' da farmi capire meglio

    file select.class.php
    PHP:
    <?php

    class SelectList
    {
        
        protected 
    $conn;
        
            public function 
    __construct()
            {
                
    $this->DbConnect();
            }
        
            protected function 
    DbConnect()
            {
                include 
    "./config.php";
                
                
    $this->conn mysqli_connect($DB_host,$DB_user,$DB_password,$DB_name) OR die("Impossibile connettersi al database");
                
    mysqli_select_db($this->conn,$DB_name) OR die("Impossibile selezionare il database $db");
                
                return 
    TRUE;
            }
            
            public function 
    ShowRegioni()
            {
                
    $res mysqli_query($this->conn,"SELECT * FROM regioni");
                
    $regioni '<option value="0">Scegli Regione...</option>';
                
                    while(
    $row mysqli_fetch_array($res))
                    {
                        
    $regioni .= '<option value="' $row['id_reg'] . '">' utf8_encode($row['nome_regione']) . '</option>';
                    }
                    
                return 
    $regioni;

                }
            
            public function 
    ShowProvince()
            {
                
    $res mysqli_query($this->conn,"SELECT * FROM province WHERE id_reg=$_POST[id_reg]");
                
    $province '<option value="0">Scegli Provincia...</option>';
                
                    while(
    $row mysqli_fetch_array($res))
                    {
                        
    $province .= '<option value="' $row['id_pro'] . '">' utf8_encode($row['nome_provincia']) . '</option>';
                        
    $provincia $row['nome_provincia'];
                    }
                    
                return 
    $province;
            }
            
            public function 
    ShowComuni()
            {
                
    $res mysqli_query($this->conn,"SELECT * FROM comuni WHERE id_pro=$_POST[id_pro]");
                
    $comuni '<option value="0">Scegli Comune...</option>';
                
                    while(
    $row mysqli_fetch_array($res))
                    {
                        
    $comuni .= '<option value="' $row['id_com'] . '">' $row['cap'] . ' - ' utf8_encode($row['comune']) . '</option>';
                        
    $comune $row['comune'];
                    }
                    
                return 
    $comuni;
            }
    }

    ?>
    file select.php
    PHP:
    <?php

    include_once './regioniProvinceComuni/select.class.php';
    $opt = new SelectList();

    if(isset(
    $_POST['id_reg']))
    {
        echo 
    $opt->ShowProvince();
        die;
    }

    if(isset(
    $_POST['id_pro']))
    {
        echo 
    $opt->ShowComuni();
        die;
    }


    ?>

    PHP:
    function contatti_home()
            
            
    {
            
    // richiamo il file di configurazione
            
    require 'config.php';

            
    // richiamo lo script responsabile della connessione a MySQL
            
    require 'connect.php';


    $query "INSERT INTO contatti (regione,provincia,comune)
                        VALUES ('
    $regione','$provincia','$comune',)";

                  

      
            
    // invio la query
            
    $result mysql_query($query);
        
       
                
    // controllo l'esito
                    
    if (!$result) {
                    die(
    "Errore nella query $query: " mysql_error());
            
        
                    }

                    
    // recupero l'id autoincrement generato da MySQL per il nuovorecord inserito
                    
    $id_inserito mysql_insert_id();

                    
    // chiudo la connessione a MySQL
                    
    mysql_close();

    header("location: http://url/");
        
                    }

    HTML:
    <body>
    	
    <?php
    include_once './regioniProvinceComuni/select.class.php';
    $opt = new SelectList();
    ?>
    
    <div class="form-wrap">
    <form action ="invio_db.php" method="post" name="modulo" id="modulo" data-toggle="validator" role="form" enctype="multipart/form-data" >
    
    <fieldset class="form_left col-sm-4" action="?">
    	<select class="form-control" id="regioni" name="regione">
          <?php echo $opt->ShowRegioni(); ?> 
        </select>
    	
      </fieldset>
    	
    	
    	
    	
    	<div class="form_center col-sm-4" action="?">
    		<div class="form-group has-feedback">
    				<select id ="province" name="provincia" class="form-control" >
    					<?php echo $opt->ShowProvince(); ?>
    				</select>
            
    	  </div>	
        </div>
    	
    	
    	<div class="form_right col-sm-4" action="?">
    		<div class="form-group has-feedback">
    			<select id ="comuni" name="comune" class="form-control" >
    				<?php echo $opt->ShowComuni(); ?>
    			</select>
    		</div>
        </div>
    
    <div class="form-group form_left col-sm-12">
        	    <button type="submit" class="btn btn-primary">Invia</button>
      	</div>
        </form>
    

    non c'e' alcun problema nell apertura della connessione anche se non ho postato il codice ..
    Io vorrei che sul file select.class.php una volta che la funzione while estrapola l id_reg prestabilito alla selezione dell utente sul form , poter alimentare un altra variabile con il nome della regione in questione , da poter inviare ad un altro database centralizzato .. al momento mi si carica l id (numero identificativo ) della regione e non sono riuscito per ora a alimentare una variabile con il nome del rispettivo id da inviare appunto ad un altro db

    Attendo un vostro parere a riguardo ..
    Vi ringrazio Micha
     
    Ultima modifica: 18 Aprile 2016
  2. criric

    criric Super Moderatore Membro dello Staff SUPER MOD MOD

    Registrato:
    21 Agosto 2010
    Messaggi:
    5.607
    Mi Piace Ricevuti:
    54
    Punteggio:
    48
    Sesso:
    Maschio
    Località:
    TN
    Ciao, metti nel value della option sia l'id che il nome separati da un pipe o una virgola, nel file che riceve i dati puoi splittare il valore ricevuto e averli entrambi a disposizione.
     
Sto caricando...

Condividi questa Pagina