Più conosco php e più mi accorgo di non avere ancora salito il primo gradino..
In realtà tento sempre di prendere l'ascensore..
Comunque, ho un problema con una query per la ricerca in un database qui di seguito:
ho una tabella con 4 campi,
campo1
campo2
campo3
campo4
ho un form di ricerca per questi 4 campi
<form action="search.php" method="get" name="form" id="form">
<input name="contratto" type="radio" value="vendita" />
<input name="contratto" type="radio" value="affitto" />
<select name="regione" id="combo_0" onchange="change(this);">
<option value="" selected="selected">Seleziona Regione</option>
<option value='abruzzo'>Abruzzo</option>
<option value="basilicata">Basilicata</option>
<option value="calabria">Calabria</option>
<option value="campania">Campania</option>
<option value="emilia romagna">Emilia Romagna</option>
<option value="friuli venezia giulia">Friuli Venezia Giulia</option>
<option value="lazio">Lazio</option>
<option value="liguria">Liguria</option>
<option value="lombardia">Lombardia</option>
<option value="marche">Marche</option>
<option value="molise">Molise</option>
<option value="piemonte">Piemonte</option>
<option value="puglia">Puglia</option>
<option value="sardegna">Sardegna</option>
<option value="sicilia">Sicilia</option>
<option value="toscana">Toscana</option>
<option value="trentino alto adige">Trentino Alto Adige</option>
<option value="umbria">Umbria</option>
<option value="valle d aosta">Valle d'Aosta</option>
<option value="veneto">Veneto</option>
</select>
<select name="provincia" id="combo_1"
<option value="value1">--------------------</option>
</select>
<select name="tipologia" id="tipologia">
<option value="" class="noselect">Tutte</option>
<option value="altro">Altro </option>
<option value="appartamento">Appartamento </option>
<option value="casa indipendente">Casa indipendente </option>
<option value="rustico / casale">Rustico / Casale </option>
<option value="terreno edificabile">Terreno edificabile </option>
<option value="villa">Villa </option>
<option value="villetta a schiera">Villetta a schiera </option>
</select>
<input name="Submit" type="submit" class="button_ricerca" value="Cerca" />
</form>
quindi avrò una pagina di risultati search.php che dovrà contenere una query con delle variabili
per fare in modo che alla selezione ("tutte" value ="")del campo "tipologia" vengano in qualche modo restituiti tutti i record ma filtrati già dai tre parametri precedenti.
mi serve un costrutto tipo IF da inserire nella query(spiegazione gentilmente concessa) ma non riesco a costruirla da solo codice, mentre l'ho già creata aiutandomi col programma che uso ed è perfettamente funzionante se vengono soddisfatti tutti i valori di ricerca ma alla selezione "tutte" che ha un value="" nel campo "tipologia" non restituisce un bel niente.
di seguito il codice, magari si può aggiungere il costrutto direttamente qui:
$palname_rsAnnunci = "-1";
if (isset($_GET['tipologia'])) {
$palname_rsAnnunci = (get_magic_quotes_gpc()) ? $_GET['tipologia'] : addslashes($_GET['tipologia']);
}
$salname_rsAnnunci = "-1";
if (isset($_GET['provincia'])) {
$salname_rsAnnunci = (get_magic_quotes_gpc()) ? $_GET['provincia'] : addslashes($_GET['provincia']);
}
$colname_rsAnnunci = "-1";
if (isset($_GET['contratto'])) {
$colname_rsAnnunci = (get_magic_quotes_gpc()) ? $_GET['contratto'] : addslashes($_GET['contratto']);
}
$malname_rsAnnunci = "-1";
if (isset($_GET['regione'])) {
$malname_rsAnnunci = (get_magic_quotes_gpc()) ? $_GET['regione'] : addslashes($_GET['regione']);
}
mysql_select_db($database_sau, $sau);
$query_rsAnnunci = sprintf("SELECT * FROM regioni WHERE (contratto = '%s' AND regione = '%s' AND provincia = '%s' AND tipologia = '%s') ORDER BY zona", $colname_rsAnnunci,$malname_rsAnnunci,$salname_rsA nnunci,$palname_rsAnnunci);
$query_limit_rsAnnunci = sprintf("%s LIMIT %d, %d", $query_rsAnnunci, $startRow_rsAnnunci, $maxRows_rsAnnunci);
$rsAnnunci = mysql_query($query_limit_rsAnnunci, $sau) or die(mysql_error());
$row_rsAnnunci = mysql_fetch_assoc($rsAnnunci);
non è completo ma credo che basti..
Help please