Aggiunta funzionalità script php Regione Provincia Comune

  • Creatore Discussione Creatore Discussione micha93
  • Data di inizio Data di inizio

micha93

Nuovo Utente
18 Apr 2016
12
1
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:
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.
 

Discussioni simili