Subversion Repositories eFlore/Projets.eflore-projets

Rev

Rev 263 | Rev 628 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 263 Rev 264
Line 98... Line 98...
98
		} else {
98
		} else {
99
			if ($this->format_reponse == 'zone-geo/id/relations') { 
99
			if ($this->format_reponse == 'zone-geo/id/relations') { 
100
			//si aucune relations n'existe, la valeur null est retournée
100
			//si aucune relations n'existe, la valeur null est retournée
101
				$res_version = null;
101
				$res_version = null;
102
			} else {
102
			} else {
103
				$d = 'Données recherchées introuvables dans la base';
103
				$d = 'Données recherchées introuvables dans la base'.$requete;
104
				$this->renvoyerErreur(RestServeur::HTTP_CODE_RESSOURCE_INTROUVABLE, $d);
104
				$this->renvoyerErreur(RestServeur::HTTP_CODE_RESSOURCE_INTROUVABLE, $d);
105
				Debug::printr($requete);
105
				Debug::printr($requete);
106
			}
106
			}
107
		}
107
		}
108
		return $res_version;
108
		return $res_version;
Line 304... Line 304...
304
	
304
	
305
	public function ajouterLimiteDepart($id) {
305
	public function ajouterLimiteDepart($id) {
306
		$d = explode(":", $id);
306
		$d = explode(":", $id);
307
		$this->limite_requete['depart'] = 0;
307
		$this->limite_requete['depart'] = 0;
-
 
308
		$this->limite_requete['dept'] = $d[1];
308
		$this->limite_requete['dept'] = $d[1];
309
		if (!isset($this->parametres['masque.determination.nn'])) {
309
		$requete_condition = (is_numeric($d[0])) ? '`num_nom` = '.$d[0]  : '`nom_sci` like "'.urldecode($d[0]).'%"';
310
			$requete_condition = (is_numeric($d[0])) ? '`num_nom` = '.$d[0]  : '`nom_sci` like "'.urldecode($d[0]).'%"';
310
		$requete = "SELECT id FROM $this->table WHERE ".$requete_condition;
311
			$requete = "SELECT id FROM $this->table WHERE ".$requete_condition;
311
		$res = $this->getBdd()->recuperer($requete);
312
			$res = $this->getBdd()->recuperer($requete);
312
		if ($res == '') { //cas ou la requete comporte des erreurs
313
			if ($res == '') { //cas ou la requete comporte des erreurs
313
			$r = 'La requête SQL formée comporte une erreur !!';
314
				$r = 'La requête SQL formée comporte une erreur !!';
314
			$this->renvoyerErreur(RestServeur::HTTP_CODE_RESSOURCE_INTROUVABLE, $r);
315
				$this->renvoyerErreur(RestServeur::HTTP_CODE_RESSOURCE_INTROUVABLE, $r);
315
			Debug::printr($requete);
316
				Debug::printr($requete);
316
		} elseif ($res) {
317
			} elseif ($res) {
317
			$this->limite_requete['depart'] = $res['id'] - 1;
318
				$this->limite_requete['depart'] = $res['id'] - 1;
318
		} else {
319
			} else {
319
			$i = "Les données recherchées sont introuvables";
320
				$i = "Les données recherchées sont introuvables";
-
 
321
				$this->renvoyerErreur(RestServeur::HTTP_CODE_RESSOURCE_INTROUVABLE, $i);
320
			$this->renvoyerErreur(RestServeur::HTTP_CODE_RESSOURCE_INTROUVABLE, $i);
322
			}
321
		}
323
		}
Line 322... Line 324...
322
	}
324
	}
323
	
325
	
Line 632... Line 634...
632
	 */
634
	 */
633
	public function formulerUrlObs($suivant, $total, $id = null) {
635
	public function formulerUrlObs($suivant, $total, $id = null) {
634
		$debut_url = Config::get('url_service').$id.'?';
636
		$debut_url = Config::get('url_service').$id.'?';
635
		//on recrée l'url sans les parametres de navigation qui seront rajouter ci-apres. On les enlève dc de la table des parametres
637
		//on recrée l'url sans les parametres de navigation qui seront rajouter ci-apres. On les enlève dc de la table des parametres
636
		$table_bis = $this->table_param;
638
		$table_bis = $this->table_param;
637
		if (isset($table_bis['navigation_depart'] )) {
639
		if (isset($table_bis['navigation.depart'] )) {
638
			unset($table_bis['navigation_depart']);
640
			unset($table_bis['navigation.depart']);
639
		}
641
		}
640
		if (isset($table_bis['navigation_limite'])) {
642
		if (isset($table_bis['navigation.limite'])) {
641
			unset($table_bis['navigation_limite']);
643
			unset($table_bis['navigation.limite']);
642
		}
644
		}
643
		$parametre_url = http_build_query($table_bis);
645
		$parametre_url = http_build_query($table_bis);
644
		//on recupere les limites
646
		//on recupere les limites
645
		$url['suivant']   = $this->recupererLesLimitesSuivantesObs($suivant, $total);
647
		$url['suivant']   = $this->recupererLesLimitesSuivantesObs($suivant, $total);
646
		$url['precedent'] = $this->recupererLesLimitesPrecedentesObs($suivant);
648
		$url['precedent'] = $this->recupererLesLimitesPrecedentesObs($suivant);
Line 648... Line 650...
648
		foreach ($url as $key => $limite) {
650
		foreach ($url as $key => $limite) {
649
			if ($limite != '') {
651
			if ($limite != '') {
650
				if ($parametre_url == '') {
652
				if ($parametre_url == '') {
651
					//si il n'y a aucun parametres, seules les limites sont à ajouter.On enleve dc le signe & du début
653
					//si il n'y a aucun parametres, seules les limites sont à ajouter.On enleve dc le signe & du début
652
					$limite = str_replace('&navigation.depart=', 'navigation.depart=', $limite);
654
					$limite = str_replace('&navigation.depart=', 'navigation.depart=', $limite);
653
					if (strpos($limite, 'navigation.depart') == false) {
655
					if (strpos($limite, 'navigation.depart') === false) {
654
						$limite = str_replace('&navigation.limite=', 'navigation.limite=', $limite);
656
						$limite = str_replace('&navigation.limite=', 'navigation.limite=', $limite);
655
					}
657
					}
656
				}
658
				}
657
				$url_complete = $debut_url.$parametre_url.$limite;
659
				$url_complete = $debut_url.$parametre_url.$limite;
658
				$url[$key] = $url_complete;
660
				$url[$key] = $url_complete;