bonjour,
J'ai repris un site qui utilise PDO dans la gestion de la base de donnée
le probleme c'est que j'ai besoin d'acceder à 2 bases sur la même page.
je cherche donc un equivalent de mysql_select_db mais je le ne le trouve pas.
lorsque je fais 2 pointeur vers 2 base différents ca me renvoie une erreur.
lorsque j'essaie de supprimer la 1ere connexion et ouvrir une 2eme ca ne fonctionne pas non plus
lorsque je commentente une partie ou l'autre elle fonctionne chacune, c'est vraiment lorsque je mets les 2 que ca ne fonctionne pas
l'erreur indiqué est:
la ligne 31 correspond a l'execute d'une requete sur la 2eme baseFatal error: Call to a member function execute() on a non-object in C:\server\www\dev\modules\admin\vacation.php on line 31
voici le code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69 <?php class PDO2 extends PDO { private static $_instance; /* Constructeur : héritage public obligatoire par héritage de PDO */ public function __construct( ) { } // End of PDO2::__construct() */ /* Singleton */ public static function getInstance() { if (!isset(self::$_instance)) { try { self::$_instance = new PDO(SQL_DSN, SQL_USERNAME, SQL_PASSWORD); } catch (PDOException $e) { echo $e; } } return self::$_instance; } public static function getInstanceGesha() { if (!isset(self::$_instance)) { try { self::$_instance = new PDO(SQL_DSN_GESHA, SQL_USERNAME, SQL_PASSWORD); } catch (PDOException $e) { echo $e; } } return self::$_instance; } // End of PDO2::getInstance() */ } $idVac = array(); $pdo= PDO2::getInstance(); $sql = 'select * from vacation where dateGesha >= "'.date('Y-m-d').'";'; echo $sql."<br />"; $requete2 = $pdo->query($sql); $requete2->execute(); while($result_vacation = $requete2->fetch(PDO::FETCH_ASSOC)){ $idVac[] = $result_vacation['idGesha']; echo $result_vacation['idGesha']."<br />"; } $requete2->closeCursor(); $requete2=null; $pdo= null; $pdoG = PDO2::getInstanceGesha(); $requete = $pdoG->query('select idGesha, numGesha, dateGesha, titre from gesha where vacation=\'1\' and dateGesha >= \''.date('Y-m-d').'\' order by dateGesha '); $requete->execute(); //c'est la ligne 31 ?>
Partager