• User

    Non mi funziona la connessione/query mysqli. Ma perché?

    Ciao a tutti, vado subito al sodo. Ho una index.php con un form del tipo Marca -> Modello. Alla selezione di una marca, la select Modello mi propone dei valori. Per visualizzare le varie marche uso la funzione ShowMarche(). Una volta selezionata la marca, una funzione Javascript va a richiamare il metodo ShowModelli(). Tutto funzioni, ma la query in ShowModelli() non viene eseguita e non riesco a capire il motivo!

    Va in die! Mi mostra la query sql correttamente, quindi non c'è un errore nel passaggio del parametro o altro, ma va in die. Mi sapete dire il perché? Sto impazzendo!!

    <?php
    class Option{
    	public function ShowMarche(){
    		$mysqli = new mysqli(HOST, USER, PASSWORD, DATABASE);
    		
    		echo '<select class="form-control" id="sel_marche" name="sel_marche"><option value="no">Scegli...</option>';
    
    
    		$query = "SELECT * FROM marche";
    		if(!$result = $mysqli->query($query)){
    		    die("<script type='text/javascript'>alert('PROBLEMA');</script>");
    		}		
    
    
    		while($row = $result->fetch_array())
    			echo '<option value="' . $row['id'] . '">' . $row['nome'] . '</option>';
    		
    		echo '</select>';
    		$result->free();
    		$mysqli->close();
    	}
    		
    	public function ShowModelli(){
    		$mysqli = new mysqli(HOST, USER, PASSWORD, DATABASE);
    			
    		$id_marche = $_POST['id_marche'];
     
    		$query = "SELECT * FROM modelli WHERE id_marca=$id_marche";
    		if(!$result = $mysqli->query($query)){
    		    die("<script type='text/javascript'>alert('$query');</script>");
    		}
    			
    		echo'<option value="no">Scegli...</option>';
    		
    		while($row = $result->fetch_array())
    			echo '<option value="' . $row['id'] . '">' . $row['nome'] . '</option>';
    			
    		$result->free();
    		$mysqli->close();
    	}
    		
    	public function ShowClub(){
    		$mysqli = new mysqli(HOST, USER, PASSWORD, DATABASE);
    		$query = "SELECT * FROM club";
    		$result = $mysqli->query($query);
    		
    		while($row = $result->fetch_array())
    			echo '<option value="' . $row['id'] . '">' . $row['nome'] . '</option>';
    			
    		$result->free();
    		$mysqli->close();
    	}
    }
    ?>