Subversion Repositories Applications.framework

Rev

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

Rev 425 Rev 426
Line 12... Line 12...
12
* @package   Framework
12
* @package   Framework
13
* @author	aurelien <aurelien@tela-botanica.org>
13
* @author	aurelien <aurelien@tela-botanica.org>
14
* @copyright 2009 Tela-Botanica
14
* @copyright 2009 Tela-Botanica
15
* @license   http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
15
* @license   http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
16
* @license   http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
16
* @license   http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
17
* @version   SVN: $$Id: Modele.php 425 2013-04-30 15:30:18Z jpm $$
17
* @version   SVN: $$Id: Modele.php 426 2013-04-30 16:58:14Z jpm $$
18
* @link	  /doc/framework/
18
* @link	  /doc/framework/
19
*
19
*
20
*/
20
*/
21
abstract class Modele {
21
abstract class Modele {
Line 97... Line 97...
97
	 * @throws Exception une exception dans le cas ou là connexion échoue
97
	 * @throws Exception une exception dans le cas ou là connexion échoue
98
	 */
98
	 */
99
	final private function connecter() {
99
	final private function connecter() {
100
		switch ($this->abstraction) {
100
		switch ($this->abstraction) {
101
			case 'pdo':
101
			case 'pdo':
-
 
102
				try {
102
				$this->connexion = new PDO($this->dsn, $this->utilisateur, $this->pass);
103
					$this->connexion = new PDO($this->dsn, $this->utilisateur, $this->pass);
-
 
104
					$this->connexion->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
-
 
105
				} catch (PDOException $e) {
-
 
106
					throw new Exception('Erreur de connexion à la base de données : '.$e->getMessage());
-
 
107
				}
103
			break;
108
			break;
Line 104... Line 109...
104
 
109
 
105
			case 'mysql':
110
			case 'mysql':
106
				$this->connexion = mysql_connect($this->hote,$this->utilisateur,$this->pass);
111
				$this->connexion = mysql_connect($this->hote,$this->utilisateur,$this->pass);
Line 264... Line 269...
264
 
269
 
265
	/**
270
	/**
266
	 * protège une chaine de caractères avant l'insertion dans la base de données
271
	 * protège une chaine de caractères avant l'insertion dans la base de données
267
	 */
272
	 */
268
	final protected function proteger($chaine) {
-
 
269
 
273
	final protected function proteger($chaine) {
270
		// on ne se connecte que lors du premier appel à une requete
274
		// on ne se connecte que lors du premier appel à une requete
271
		if ($this->connexion == null) {
275
		if ($this->connexion == null) {
272
			$this->connecter();
276
			$this->connecter();
Line 273... Line 277...
273
		}
277
		}
274
 
-
 
275
		$retour = $chaine;
278
 
276
 
279
		$retour = $chaine;
277
		switch ($this->abstraction) {
280
		switch ($this->abstraction) {
278
			case 'pdo':
281
			case 'pdo':
279
				$retour = $this->connexion->quote($chaine);
282
				$retour = $this->connexion->quote($chaine);
Line 286... Line 289...
286
				break;
289
				break;
287
			case 'sqlite3':
290
			case 'sqlite3':
288
				$retour = $this->connexion->escapeString($chaine);
291
				$retour = $this->connexion->escapeString($chaine);
289
				break;
292
				break;
290
		}
293
		}
291
 
-
 
292
		return $retour;
294
		return $retour;
293
	}
295
	}
Line 294... Line 296...
294
 
296
 
295
	/**
297
	/**