config=$config; } function getElement($uid){ // Controle detournement utilisateur session_start(); $this->controleUtilisateur($uid[0]); // uid[0] : utilisateur obligatoire // uid[1] : si absent : valeur 'all' (departement) // uid[2] : si absent : valeur 'all' (commune) // uid[3] : si absent : valeur 'all' (annee) // uid[4] : si absent : valeur 'all' (mois) // uid[5] : si absent : valeur 'all' (jour) // uid[6] : si absent : valeur 'all' (recherche libre) // uid[7] : si absent : valeur 'all' (lieudit) // uid[8] et uid[9] : selection intervalle $DB=$this->connectDB($this->config,'database_cel'); if (!isset($uid[1]) || $uid[1]=="" || $uid[1]=="all" ) { $uid[1]="all"; $query_id_location=""; } else { $query_id_location=" AND id_location='".$DB->escapeSimple($uid[1])."' "; } if (!isset($uid[2]) || $uid[2]=="" || $uid[2]=="all" ) { $uid[2]="all"; $query_location=""; } else { $query_location=" AND location='".$DB->escapeSimple($uid[2])."' "; } if (!isset($uid[3]) || $uid[3]=="" || $uid[3]=="all") { $uid[3]="all"; $query_year=""; } else { $query_year=" AND year(date_observation)='".$DB->escapeSimple($uid[3])."' "; } if (!isset($uid[4]) || $uid[4]=="" || $uid[4]=="all") { $uid[4]="all"; $query_month=""; } else { $query_month=" AND month(date_observation)='".$DB->escapeSimple($uid[4])."' "; } if (!isset($uid[5]) || $uid[5]=="" || $uid[5]=="all") { $uid[5]="all"; $query_day=""; } else { $query_day=" AND day(date_observation)='".$DB->escapeSimple($uid[5])."' "; } if (!isset($uid[6]) || $uid[6]=="" || $uid[6]=="all") { $uid[6]="all"; $query_libre=""; } else { $query_libre=" AND (nom_sel like '%".$DB->escapeSimple($uid[6])."%' OR nom_ret like '%".$DB->escapeSimple($uid[6])."%' OR station like '%".$DB->escapeSimple($uid[6])."%' OR milieu like '%".$DB->escapeSimple($uid[6])."%' OR commentaire like '%".$DB->escapeSimple($uid[6])."%') "; } if (!isset($uid[7]) || $uid[7]=="" || $uid[7]=="all") { $uid[7]="all"; $query_lieudit=""; } else { $query_lieudit=" AND lieudit='".$DB->escapeSimple($uid[7])."' "; } $value=array(); if (isset($uid[8]) && isset($uid[9])) { $query="SELECT identifiant, ordre, nom_sel, num_nom_sel, nom_ret, num_nom_ret, num_taxon, famille, location, date_observation," . " lieudit, station, milieu, commentaire, transmission FROM cel_inventory WHERE identifiant='".$DB->escapeSimple($uid[0])."' " . $query_id_location. $query_location. $query_year. $query_month. $query_day. $query_libre. $query_lieudit. " ORDER BY ordre LIMIT ".$uid[8].",".$uid[9]; } else { if (isset($uid[8])) { // les n derniers $query="SELECT identifiant, ordre, nom_sel, num_nom_sel, nom_ret, num_nom_ret, num_taxon, famille, location, date_observation," . " lieudit, station, milieu, commentaire, transmission FROM cel_inventory WHERE identifiant='".$DB->escapeSimple($uid[0])."' " . $query_id_location. $query_location. $query_year. $query_month. $query_day. $query_libre. $query_lieudit. " ORDER BY ordre LIMIT ".$uid[8].",18446744073709551615"; } else { $query="SELECT count(*) as count FROM cel_inventory WHERE identifiant='".$DB->escapeSimple($uid[0])."'" . $query_id_location. $query_location. $query_year. $query_month. $query_day. $query_libre. $query_lieudit; $res =& $DB->query($query); if (DB::isError($res)) { die($res->getMessage()); } while ($row =& $res->fetchrow(DB_FETCHMODE_ASSOC)) { $value=$row['count']; } $output = json_encode((integer)$value); print($output); return true; } } $res =& $DB->query($query); if (DB::isError($res)) { die($res->getMessage()); } while ($row =& $res->fetchrow(DB_FETCHMODE_ASSOC)) { if ($row['date_observation']!="0000-00-00 00:00:00") { list($year,$month,$day)= split ('-',$row['date_observation']); list($day)= split (' ',$day); $row['date_observation']=$day."/".$month."/".$year; } $value[]=array($row['nom_sel'], $row['num_nom_sel'],$row['nom_ret'],$row['num_nom_ret'],$row['num_taxon'],$row['famille'], $row['location'], $row['ordre'], $row['date_observation'], $row['lieudit'], $row['station'], $row['milieu'], $row['commentaire'], $row['transmission']); } $output = json_encode($value); print($output); return true; } } /* +--Fin du code ---------------------------------------------------------------------------------------+ * $Log$ * Revision 1.7 2008-11-13 11:29:12 ddelon * Reecriture gwt-ext * * Revision 1.6 2008-01-30 08:57:28 ddelon * fin mise en place mygwt * * Revision 1.5 2007-05-22 12:54:08 ddelon * Securisation acces utilisateur * * * */ ?>