Subversion Repositories eFlore/Applications.cel

Rev

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

Rev 716 Rev 718
Line 454... Line 454...
454
		$requete = rtrim($requete,' AND ');
454
		$requete = rtrim($requete,' AND ');
455
		return $requete;
455
		return $requete;
456
	}
456
	}
Line 457... Line 457...
457
	
457
	
458
	private function creerSousRequeteMotsCles($mot_cle) {
458
	private function creerSousRequeteMotsCles($mot_cle) {
459
		$requete = '';
459
		$requete = ' ( ';
460
		if (preg_match('/.*,.*/', $mot_cle)) {
460
		if (preg_match('/.*,.*/', $mot_cle)) {
461
			$requete = $this->creerSousRequeteMotsClesOu($mot_cle);
461
			$requete = $this->creerSousRequeteMotsClesOu($mot_cle);
462
		} else if (preg_match('/.*ET.*/', $mot_cle)) {
462
		} else if (preg_match('/.*ET.*/', $mot_cle)) {
463
			$requete = $this->creerSousRequeteMotsClesEt($mot_cle);
463
			$requete = $this->creerSousRequeteMotsClesEt($mot_cle);
464
		} else {		
464
		} else {		
465
			// Construction de la requête
465
			// Construction de la requête
466
			$prerequete = 	"SELECT cmc_id_mot_cle_utilisateur, cmc_id_proprietaire FROM cel_mots_cles_images WHERE $where ".
466
			$prerequete = 	"SELECT cmc_id_mot_cle_utilisateur, cmc_id_proprietaire FROM cel_mots_cles_images WHERE ".
467
				'cmc_id_mot_cle_general = '.$this->bdd->quote($this->encoderMotCle($mot_cle)); 
467
				'cmc_id_mot_cle_general = '.$this->bdd->quote($this->encoderMotCle($mot_cle)); 
468
			$elements = $this->executerRequete($prerequete);
468
			$elements = $this->executerRequete($prerequete);
469
			if ($elements != false && count($elements) > 0) {
469
			if ($elements != false && count($elements) > 0) {
470
				foreach ($elements as $occurence) {
470
				foreach ($elements as $occurence) {
471
					$requete .= '(ci_meta_mots_cles LIKE "%'.$occurence['cmc_id_mot_cle_utilisateur'].'%" AND ci_ce_utilisateur = '.
471
					$requete .= '(ci_meta_mots_cles LIKE "%'.$occurence['cmc_id_mot_cle_utilisateur'].'%" AND ci_ce_utilisateur = '.
472
						$this->bdd->quote($occurence['cmc_id_proprietaire']).' ) OR ';	
472
						$this->bdd->quote($occurence['cmc_id_proprietaire']).' ) OR ';	
473
				}
473
				}
474
			}
474
			}
475
		}
475
		}
476
		$requete = rtrim($requete,' OR ').' AND ';
476
		$requete = rtrim($requete,' OR ').' ) AND ';
477
		return $requete;
477
		return $requete;
Line 478... Line 478...
478
	}
478
	}
479
	
479
	
Line 480... Line 480...
480
	private function creerSousRequeteMotsClesOu($mot_cle) {
480
	private function creerSousRequeteMotsClesOu($mot_cle) {
481
		$requete = '';
481
		$requete = ' ( ';
482
		
482
		
483
		$tab_mots_cles = explode(',', $mot_cle);
483
		$tab_mots_cles = explode(',', $mot_cle);
Line 498... Line 498...
498
		}
498
		}
499
		return $requete;
499
		return $requete;
500
	}
500
	}
Line 501... Line 501...
501
	
501
	
502
	private function creerSousRequeteMotsClesEt($mot_cle) {
502
	private function creerSousRequeteMotsClesEt($mot_cle) {
503
		$requete = '';
503
		$requete = ' ( ';
504
		$where = '';
504
		$where = '';
505
		$champs = 'a.cmc_id_proprietaire , ';
505
		$champs = 'a.cmc_id_proprietaire , ';
506
		$table = '';
506
		$table = '';