Rev 2436 | Blame | Compare with Previous | Last modification | View Log | RSS feed
<?phpclass Dao extends Bdd {private $temps_derniere_requete = 0;public function rechercherCoordonnees() {$requete = "SELECT longitude, latitude "."FROM cel_obs "."GROUP BY longitude , latitude ";$resultat = $this->recupererTous($requete);$this->reinitialiserTempsDerniereRequete();return $resultat;}public function rechercherCoordonneesSansCorrespondances() {$requete = 'SELECT longitude, latitude '.'FROM cel_obs '."WHERE code_insee_calcule = '' ".' AND DATE_ADD(date_modification, INTERVAL 25 HOUR) >= CURDATE() '.'GROUP BY longitude , latitude ';$resultat = $this->recupererTous($requete);$this->reinitialiserTempsDerniereRequete();return $resultat;}public function creerColonneCodeInseeCalcule() {$create = 'ALTER TABLE cel_obs '.'ADD code_insee_calcule VARCHAR(5) NOT NULL ';$this->requeter($create);$this->reinitialiserTempsDerniereRequete();}public function ajouterCodeInseeCalcule($latitude, $longitude, $code_insee) {$insert = 'UPDATE cel_obs '."SET code_insee_calcule = ".$this->proteger($code_insee)." "."WHERE latitude = ".$this->proteger($latitude)." "." AND longitude = ".$this->proteger($longitude)." ";$this->requeter($insert);$this->reinitialiserTempsDerniereRequete();}public function modifierCodeInseeEtZoneGeo($coordonnees) {$update = "UPDATE cel_obs "."SET ce_zone_geo = CONCAT('INSEE-C:' , code_insee_calcule), "."zone_geo = ".$this->proteger($coordonnees['nom'])." "."WHERE ce_zone_geo = '' AND zone_geo = '' "." AND latitude = ".$this->proteger($coordonnees['latitude'])." "." AND longitude = ".$this->proteger($coordonnees['longitude'])." ";$this->requeter($update);$this->reinitialiserTempsDerniereRequete();}// Il peut se passer assez de temps sans qu'aucune requete ne soit effectuée// (cas d'un grand nombre d'enregistrements à la suite pour lesquels on ne trouve// aucun département). Pour éviter cela on teste régulièrement la connectionpublic function testerActiviteConnection() {$temps_courant = microtime(true);$temps_depuis_derniere_requete = $temps_courant - $this->temps_derniere_requete;if($temps_depuis_derniere_requete >= 18) {$this->ping();$this->reinitialiserTempsDerniereRequete();}}private function reinitialiserTempsDerniereRequete() {$this->temps_derniere_requete = microtime(true);}}