Subversion Repositories Applications.referentiel

Rev

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

Rev 109 Rev 132
Line 209... Line 209...
209
	
209
	
210
	private function pretraiterParametresUrl($param) {
210
	private function pretraiterParametresUrl($param) {
211
		// Tableau des paramètres qui peuvent être passés dans l'url
211
		// Tableau des paramètres qui peuvent être passés dans l'url
212
		$params_passes = array('ref' => 'str',
212
		$params_passes = array('ref' => 'str',
213
			'mots' => 'str',
213
			'mots' => 'str',
214
			'sg' => 'str', 
214
			'sg' => 'str_exact', 
215
			'gen' => 'str', 
215
			'gen' => 'str_exact', 
216
			'sp' => 'str',
216
			'sp' => 'str_exact',
217
			'ssp' => 'str',
217
			'ssp' => 'str_exact',
218
			'au' => 'str',
218
			'au' => 'str',
219
			'an' => 'str',
219
			'an' => 'str',
220
			'nn' => 'int',
220
			'nn' => 'int',
221
			'bib' => 'str',
221
			'bib' => 'str',
Line 243... Line 243...
243
						$valeur = '%'.implode ('%', $mots).'%';
243
						$valeur = '%'.implode ('%', $mots).'%';
244
					}
244
					}
245
					// Mise en place des quotes pour l'interrogation dans la bdd
245
					// Mise en place des quotes pour l'interrogation dans la bdd
246
					$valeur = $this->bdd->quote($valeur);
246
					$valeur = $this->bdd->quote($valeur);
247
				}
247
				}
-
 
248
				// Type de paramètre chaine exacte
-
 
249
				if ($type == 'str_exact') {
-
 
250
					// Suppression des slash
-
 
251
					$valeur = stripslashes($valeur);
-
 
252
					
-
 
253
					// Utilisation d'une recherche de chaîne exacte
-
 
254
					if (preg_match('/^"(.*)"$/', $valeur, $match)) {
-
 
255
						$valeur = $match[1].'%';
-
 
256
					} else {
-
 
257
						// Recherche de mots non liés
-
 
258
						$mots = explode(' ', $valeur);
-
 
259
						$valeur = implode ('%', $mots).'%';
-
 
260
					}
-
 
261
					// Mise en place des quotes pour l'interrogation dans la bdd
-
 
262
					$valeur = $this->bdd->quote($valeur);
-
 
263
				}
248
				// Type de paramètre booléen
264
				// Type de paramètre booléen
249
				if ($type == 'bool') {
265
				if ($type == 'bool') {
250
					if (preg_match('/^[0]$/', $valeur)) {
266
					if (preg_match('/^[0]$/', $valeur)) {
251
						$valeur = false;
267
						$valeur = false;
252
					} else if (preg_match('/^[1]$/', $valeur)) {
268
					} else if (preg_match('/^[1]$/', $valeur)) {