Alla fine, dopo ore a sbatterci la testa, funziona tutto!
Posto il codice della pagina, magari a qualcuno potrà servire!
Codice PHP:
<?php
#FILE CONTENENTE IL RECUPERO DELLE VARIABILI DAL FORM DI RICERCA DI UN IMMOBILE
#E LE QUERY PER AVERE UN RISULTATO
session_start();
#require('pg_connect.php');
?>
<link href="stili.css" rel="stylesheet" type="text/css" />
<table valign="top">
<tr>
<?php
$db = pg_connect("host=localhost port=*** dbname=*** user=*** password=***");
#RECUPERO DELLE VARIABILI#
$uso = $_POST['uso']; #POST DA CAMPO HIDDEN
$reg = $_POST['reg'];
$prov = $_POST['prov'];
$comune = $_POST['comune'];
$tipo = $_POST['tipo'];
$mq = $_POST['mq'];
$postoauto = $_POST['postoauto'];
$prezzo = $_POST['prezzo'];
$piano = $_POST['piano'];
$nlocali = $_POST['nlocali'];
#MESSAGGI DI ERRORE#
$mex = "";
#CONTROLLO PROVINCIA-REGIONE
include('controllo_provreg.php'); #NON FUNZIONA IL CONTROLLO!
if ($tipo!="Seleziona" && $tipo!="Appartamento"){
if ($piano!="Seleziona"){
$mex = $mex . "[*]Il piano va inserito solo nel caso tu stia cercando un appartamento'\n";
}
if ($nlocali!="Seleziona"){
$mex = $mex . "[*]Il numero di locali va inserito solo nel caso tu stia cercando un appartamento'\n";
}
}
if (!empty($mq)){
if (!is_numeric($mq)){
$mex = $mex . "[*]Non hai inserito una metratura valida\n";
}
}
if (!empty($prezzo)){
if (!is_numeric($prezzo)){
$mex = $mex . "[*]Non hai inserito un importo valido\n";
}
}
if ($mex!=""){
$mex = "Attenzione torna indietro\n" . $mex;
echo "<span class='testo'>" .$mex. "</span>";
if ($uso=="privato"){
?><tr><td class="testo"><form method=post action="ricercaannuncipriv.php"><input type="submit" value="Indietro"></td></tr><?php
}elseif ($uso=="commerciale"){
?><tr><td class="testo"><form method=post action="ricercaannuncicomm.php"><input type="submit" value="Indietro"></td></tr><?php
}
exit;
}
#SE NON CI SONO ERRORI
if ($mex==""){
#$que = new db();
#$que->db_open();
$condizioni = 1;
if ($reg!="Seleziona"){
$condizioni = $condizioni . " AND recapito.regione = '".$reg."'";
}
if ($prov!="Seleziona"){
$condizioni = $condizioni . " AND recapito.provincia = '".$prov."'";
}
if (!empty($comune)){
$condizioni = $condizioni . " AND recapito.comune = '".$comune."'";
}
if ($tipo!="Seleziona"){
$condizioni = $condizioni . " AND immobile.tipo = '".$tipo."'";
}
if (!empty($mq)){
$condizioni = $condizioni . " AND immobile.mq = '$mq'";
}
if (!empty($postoauto)){
$condizioni = $condizioni . " AND immobile.postoauto = '".$postoauto."'";
}
if (!empty($prezzo)){
$condizioni = $condizioni . " AND annuncio.prezzo = '$prezzo'";
}
if ($uso=="privato"){
if ($piano!="Seleziona"){
$condizioni = $condizioni . " AND immobile.piano = '".$piano."'";
}
if ($nlocali=="10"){
$condizioni = $condizioni . " AND immobile.nlocali >= '$nlocali'";
}elseif ($nlocali!="Seleziona"){
$condizioni = $condizioni . " AND immobile.nlocali = '$nlocali'";
}
}
if ($reg=="Seleziona" && $prov=="Seleziona" && empty($comune) && $tipo=="Seleziona" && $piano=="Seleziona" && $nlocali=="Seleziona" && empty($postoauto) && empty($prezzo)){
echo "<span class='testo'>Non hai inserito nessun criterio!</span>
";
if ($uso=="privato"){
echo "<form method=post action='ricercaannuncipriv.php'><input type='submit' value='Indietro'>";
}elseif ($uso=="commerciale"){
echo "<form method=post action='ricercaannuncicomm.php'><input type='submit' value='Indietro'>";
}
}else{
$query = "SELECT DISTINCT annuncio.id_a, annuncio.datapub, annuncio.validita FROM annuncio JOIN immobile ON (annuncio.id_i = immobile.id_i) JOIN recapito ON (immobile.id_i = recapito.id_i) WHERE ".$condizioni;
$result = pg_query($db,$query);
$record = pg_fetch_row($result);
if (!$record){
echo "<span class='testo'>Non sono presenti annunci corrispondenti ai criteri inseriti</span>
";
if ($uso=="privato"){
echo "<form method=post action='ricercaannuncipriv.php'><input type='submit' value='Indietro'>";
}elseif ($uso=="commerciale"){
echo "<form method=post action='ricercaannuncicomm.php'><input type='submit' value='Indietro'>";
}
}else{
#RIPETO LA QUERY PER NON PERDERE RISULTATI
$result = pg_query($db,$query);
echo "<span class='menu'>Ecco gli annunci corrispondenti ai criteri inseriti</span>
";
echo "<table border='1'><tr class='menu'><td align='center'>Id</td><td align='center'>Data di pubblicazione</td><td align='center'>Data di scadenza</td></tr>";
while ($record = pg_fetch_row($result)){
echo "<tr valign='top'>";
for ($x=0; $x<3; $x++){
#SE LA VARIABILE E' UNA DATA, ALLORA LA MODIFICO PER OTTENERE IL FORMATO dd-mm-yyy
if (!is_numeric($record[$x])){
list($y, $m, $d) = explode("-", $record[$x]);
$record[$x] = $d."-".$m."-".$y;
}
echo "<td class='testo' align='center'>".$record[$x]."</td>";
}
echo "</tr>";
}
echo "</table>";
}
}
}
?>
</tr>
</table>
ps: comunque grazie Aires per l'aiuto