Subversion Repositories eFlore/Applications.cel

Rev

Rev 589 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 589 Rev 600
Line 401... Line 401...
401
		$mots = array();
401
		$mots = array();
402
		if (! $this->etreNull($mots_cles)) {
402
		if (! $this->etreNull($mots_cles)) {
403
			$utilisateur_id = $this->bdd->quote($utilisateur_id);
403
			$utilisateur_id = $this->bdd->quote($utilisateur_id);
Line 404... Line 404...
404
			
404
			
405
			$mots_cles = $this->protegerMotsCles($mots_cles, $type);
-
 
-
 
405
			$mots_cles = $this->protegerMotsCles($mots_cles, $type);
406
			
406
			if (! $this->etreNull($mots_cles)) {
407
			$table = ($type == self::TYPE_IMG) ? 'cel_mots_cles_images' : 'cel_mots_cles_obs' ;
407
				$table = ($type == self::TYPE_IMG) ? 'cel_mots_cles_images' : 'cel_mots_cles_obs' ;
408
			
408
				
409
			$requete = 'SELECT cmc_mot_cle '.
409
				$requete = 'SELECT cmc_mot_cle '.
410
				"FROM $table ".
410
					"FROM $table ".
411
				"WHERE cmc_id_mot_cle_utilisateur IN ($mots_cles) ".
411
					"WHERE cmc_id_mot_cle_utilisateur IN ($mots_cles) ".
412
				"AND cmc_id_proprietaire = $utilisateur_id ";
412
					"AND cmc_id_proprietaire = $utilisateur_id ";
413
			
413
				
414
			$elements = $this->executerRequete($requete);
414
				$elements = $this->executerRequete($requete);
415
			
415
				
416
			foreach ($elements as $mot) {
416
				foreach ($elements as $mot) {
-
 
417
					$mots[] = $mot['cmc_mot_cle'];
417
				$mots[] = $mot['cmc_mot_cle'];
418
				}
418
			}
419
			}
419
		}
420
		}
420
		return $mots;
421
		return $mots;
Line 421... Line 422...
421
	}
422
	}
422
	
423
	
423
	private function protegerMotsCles($mots_cles, $type) {
424
	private function protegerMotsCles($mots_cles, $type) {
424
		$separateur = ($type == self::TYPE_IMG) ? ',' : ';' ;
-
 
425
		$mots_cles_a_proteger = explode($separateur,rtrim(trim($mots_cles), $separateur));
-
 
426
		foreach ($mots_cles_a_proteger as $mot) {
-
 
427
			$mots_cles_proteges[] = $this->bdd->quote($mot);
-
 
428
		}
425
		$separateur = ($type == self::TYPE_IMG) ? ',' : ';' ;
429
		$mots_cles = implode(',', $mots_cles_proteges);
426
		$mots_cles = $this->traiterValeursMultiples($mots_cles, $separateur);
Line -... Line 427...
-
 
427
		return $mots_cles;
-
 
428
	}
-
 
429
	
-
 
430
	protected function traiterValeursMultiples($valeurs, $separateur_entree = ',' , $separateur_sortie = ',') {
-
 
431
		if (! $this->etreNull($valeurs)) {
-
 
432
			$valeurs_a_proteger = explode($separateur_entree,trim(trim($valeurs), $separateur_entree));
-
 
433
			foreach ($valeurs_a_proteger as $valeur) {
-
 
434
				$valeurs_protegees[] = $this->bdd->quote($valeur);
-
 
435
			}
-
 
436
			$valeurs = implode($separateur_sortie, $valeurs_protegees);
-
 
437
		}
430
		return $mots_cles;
438
		return ($this->etreNull($valeurs)) ? null : $valeurs;
431
	}
439
	}
Line 432... Line 440...
432
	
440
	
433
	//+----------------------------------------------------------------------------------------------------------------+
441
	//+----------------------------------------------------------------------------------------------------------------+