- Home
- Categorie
- Coding e Sistemistica
- Coding
- Come gestire la creazione dinamica di menu a tendina con SELECT.
-
Come gestire la creazione dinamica di menu a tendina con SELECT.
Ciao ragazzi
Sto provando a fare una semplice cosa: una selezione di 4 menu a tendina (i famosi SELECT in HTML) per permettere all'utente di selezionare nazione/regione/provincia/città.
In base alla scelta fatta su "nazione" avrò una determinata lista di "regioni" e così via...
Stavo seguendo questo tutorial ma non riesco a venirne a capo!
http : // sviluppare-in-rete.blogspot....-dinamiche.htmlAnche se metto i miei dati di connessione al database e metto i giusti nomi dei campi e della tabella non riesco a visualizzare nessun valore dentro i SELECT.
Qualcuno sa aiutarmi?
Ho cercato anche altri tutorial ma fanno tutti uso di JS o di altri linguaggi a me purtroppo sconosciuti (quello che ho postato mi è sembrato il più semplice)!Mi farebbe piacere se qualcuno mi aiutasse a risolvere la cosa
Grazie a tutti
-
Ciao,
io quando ne feci uno copia un tutorial ma faceva uso di JS.L'alternativa ottimale è utilizzare Joomla.
Mi posteresti il codice che hai utilizzato comprese le query SQL.
-
Ciao e grazie per avermi preso in considerazione
Joomla non fa al caso mio: il codice lo sto scrivendo io partendo da zero.
Il codice usato è proprio quello che trovi nel link d'esempio.
Le uniche cose che ho cambiato sono le pagine request.php e dbconfig.phpREQUEST.PHP
<?php require 'dbconfig.php'; $conn = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD) or die; mysql_select_db(DB_NAME) or die; //I valori in input vanno verificati //id deve essere un valore numerico $pid = (int)$_REQUEST['id']; //maschera eventuali caratteri speciali in table $tb = mysql_real_escape_string($_REQUEST['table'], $conn); switch($tb) { case 'regioni': $sql="SELECT country FROM cities ORDER BY country"; break; case 'province': $sql="SELECT region FROM cities WHERE country=$pid ORDER BY region"; break; } //Il primo elemento della risposta è il nome della tabella (= attributo ID del tag select) $out="$tb;"; if($result = mysql_query($sql, $conn)) { while ($row = mysql_fetch_row($result)) { $out .= $row[0] . '|' . $row[1] . ';'; } } //Rimuove il carattere ; in coda echo rtrim($out, ';'); ?>
e poi... DBCONFIG.PHP
<?php //Modify constants with data needed to access your own database define('DB_HOST','localhost'); define('DB_NAME','bamba5'); define('DB_USER','root'); define('DB_PASSWORD',''); ?>
Dov'è che sbaglio?
-
if($result =
manca il secondo uguale
ammesso che lo script funzioni