Ragazzi eccomi qui...cerco disperatamente un aiuto per quanto riguarda una pagina che sto creando...
La pagina contiene un form con due campi select (tipologia,regione). I campi select dispongono della funzione onchange.
In soldoni:
.se nella select seleziono "Cani" viene eseguita la query "select * from annunci where tipologia=cani"
Il problema è che non riesco a far eseguire la query corretta nel caso che seleziono anche la Regione...che dovrebbe diventare:
.se nella select seleziono "Cani" e come Regione "Lombardia" viene eseguita la query "select * from annunci where tipologia=cani AND regione=lombardia"
Attualmente se seleziono solo i cani della lombardia mi escono anche quelli presenti in piemonte...
Come posso fare per rendere universale il GET e costruire la query a seconda di quello che sceglie l'utente?
Non sono un esperto di PHP, quindi chiedo gentilmente di fornirmi aiuto nel piu' semplice dei modi
Attualmente utilizzo questo codice:
Codice PHP:
Grazie!!!
La pagina contiene un form con due campi select (tipologia,regione). I campi select dispongono della funzione onchange.
In soldoni:
.se nella select seleziono "Cani" viene eseguita la query "select * from annunci where tipologia=cani"
Il problema è che non riesco a far eseguire la query corretta nel caso che seleziono anche la Regione...che dovrebbe diventare:
.se nella select seleziono "Cani" e come Regione "Lombardia" viene eseguita la query "select * from annunci where tipologia=cani AND regione=lombardia"
Attualmente se seleziono solo i cani della lombardia mi escono anche quelli presenti in piemonte...
Come posso fare per rendere universale il GET e costruire la query a seconda di quello che sceglie l'utente?
Non sono un esperto di PHP, quindi chiedo gentilmente di fornirmi aiuto nel piu' semplice dei modi
Attualmente utilizzo questo codice:
Codice PHP:
PHP:
<?php
// se l'utente seleziona solo la tipologia
if (isset($_GET['tipologia'])) {
$annunci=mysql_query("SELECT * FROM annunci WHERE tipologia='$_GET[tipologia]' ORDER BY id DESC");
}
// se l'utente seleziona solo la regione
elseif (isset($_GET['regione'])) {
$annunci=mysql_query("SELECT * FROM annunci WHERE regione='$_GET[regione]' ORDER BY id DESC");
}
// nel caso sono selezionati entrambi i campi select
elseif (isset($_GET['tipologia']) AND (isset($_GET['regione']))) {
$annunci=mysql_query("SELECT * FROM annunci WHERE tipologia='$_GET[tipologia]' AND regione='$_GET[regione]' ORDER BY id DESC");
}
// se non è stato selezionato niente, seleziona tutti gli annunci
else {
$annunci=mysql_query("SELECT * FROM annunci ORDER BY id DESC");
}
$tot=mysql_num_rows($annunci);
if ($tot==0) { echo "
<div class=\"alert alert-info\">
<i class=\"icon-info-sign\"></i>
Spiacente, non ci sono annunci con i criteri selezionati!
</div>
"; }
else {
while ($row_show=@mysql_fetch_assoc($annunci)) {
[...] omissis [...]
Grazie!!!