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

  • Creatore Discussione Creatore Discussione siriuxs
  • Data di inizio Data di inizio

siriuxs

Nuovo Utente
17 Gen 2012
7
0
0
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!!

Codice:
<?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();
	}
}
?>
 
Ciao, hai provato a stampare l'errore?
PHP:
echo $mysqli->error;
 

Discussioni simili