gestione gare pubbliche
Non puoi selezionare più di 25 argomenti Gli argomenti devono iniziare con una lettera o un numero, possono includere trattini ('-') e possono essere lunghi fino a 35 caratteri.
 
 
 
 
 

59 righe
2.1 KiB

<?
$configPath = substr(__DIR__,0,strpos(__DIR__,"/public_html"))."/config.php";
include_once($configPath);
include_once($root."/inc/funzioni.php");
if (isset($_GET["query"])) {
$text = $_GET["query"];
$esclusioni = "";
$lingua = $_SESSION["language"];
$bind = array();
if (isset($_GET["selezionate"]) && $_GET["selezionate"] != "") {
$esclusioni = " AND (";
$selezionati = explode(",",base64_decode($_GET["selezionate"]));
$i = 0;
foreach($selezionati as $codice) {
$i++;
if ($codice != "") {
$bind[":codice_".$i] = $codice;
$bind[":no_codice_".$i] = $codice."%";
$esclusioni .= "(codice <> :codice_" . $i . " AND codice NOT LIKE :no_codice_" . $i . ") AND ";
}
}
$esclusioni = substr($esclusioni,0,-5);
$esclusioni .= ")";
}
$condizione = "( ";
$return = suddivisione_pdo($text,"b_cpv.codice");
if (is_array($return)) {
$condizione .= $return["sql"] . " OR ";
$bind = array_merge($bind,$return["bind"]);
}
$return = suddivisione_pdo($text,"b_cpv.".$lingua);
if (is_array($return)) {
$condizione .= $return["sql"];
$bind = array_merge($bind,$return["bind"]);
}
$condizione .= ") ";
if(! empty($_GET["minlength"])) {
$condizione .= " AND LENGTH(codice) >= :minlength ";
$bind[":minlength"] = $_GET["minlength"];
}
if(! empty($_GET["macro"])) {
$condizione .= " AND codice LIKE :macro AND LENGTH(codice) >= :minlength ";
$bind[":macro"] = "{$_GET["macro"]}%";
$bind[":minlength"] = $_GET["minlength"];
}
$strsql = "SELECT *, b_cpv.{$lingua} AS descrizione FROM b_cpv ";
$strsql.= " WHERE {$condizione} {$esclusioni} ";
$strsql.= " ORDER BY ";
$strsql.= " LENGTH(codice), codice";
$risultato = $pdo->go($strsql,$bind);
$rec = array();
if ($risultato->rowCount()>0) {
while ($record = $risultato->fetch(PDO::FETCH_ASSOC)) {
$rec[] = array("value"=>$record["codice"],"label"=>$record["codice"] . " - " . $record["descrizione"],"complete"=>$record["codice_completo"]);
}
}
echo json_encode($rec);
}
?>