salut à tous
je développe un aplication web en PHP5 avec l'aide des bibliotéques PEAR .
j'ai une page de connexion qui permet de s'identifier et d'effectuer la connexion à la base de donée
j'ai aussi crée une classe article dont voici un bout du 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 <?php require_once 'DB.php'; require_once 'outil.php'; $user = $_SESSION['user']; $passwd = $_SESSION['passwd']; $sqlServer = 'webpetrins'; $dataBaseName ='db_petrins'; $dsn ='pgsql://'.$user.':'.$passwd.'@'.$sqlServer.'/'.$dataBaseName; $db = DB::connect($dsn); $_SESSION['db'] = clone $db; if (DB::isError($db)) { message_erreur($db->getCode()); die($db->getMessage()); } $_SESSION['labase'] = $db; $db->setFetchMode (DB_FETCHMODE_ASSOC); $res=$db->query("select idMag from t_utilisateur_mag natural join t_utilisateur where nomUtilisateur='".$user."' and passwdUtilisateur='".$passwd."'"); if (DB::isError($res)) { message_erreur($res->getCode()); die ($res->getDebugInfo()); } $i=0; while ($row =& $res->fetchRow()) { $tres[$i]=$row['idmag']; $i=$i+1; } $res->free(); $_SESSION['tabidmag']=$tres;
j'en arrive au probléme : lors de l'intansiation de la classe article le constructeur à pour paramettre l' id de l'article. il appelle la fonction charge avec l'id de l'article . cette fonction doit executer une requette SQL qui charge les valeurs dans la clases article . Or dans la fonction execute $res est reconu comme une erreur lors du test
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
70
71
72
73
74
75
76
77
78
79
80
81
82
83 <?php class article { protected $idart; protected $desart; protected $typart;//code de TVA protected $codeartfourn; protected $idunite; //unité de gestion protected $typcond; protected $ugedscond; protected $typunitevte; protected $qteutile; protected $ugedsvte; protected $idfourn; protected $idssfamart; protected $prixcourantvte; protected $prixcourantug; protected $prixcourrvte; protected $pxqteutile; protected $pxunitecondition; protected $qteminliv; protected $condliv; protected $ddermaj; protected $db; function __construct($id) { /* constructeur de la classe object avec comme paramettre l' id de l'article*/ $this->db = $_SESSION['db']; if ($id != '') { $this->charge($id); } } protected function execute($val) { /* Execute une requette SQL passer en paramettre*/ $db=$this->db; $res=$db->query($val); if (DB::isError($res)) { die ($res->getDebugInfo(). " ".$res->getMessage()." ".$res->getCode()." ".$res->getUserInfo()); } return $res; } public function charge($id) { /*cette fonction prend en paramettre l'identifiant d'un article , recherche les information dans la basse et les affectes dans les arguments*/ $requette= "select * from tblart where idart=".$id; $res=$this->execute($requette); $db=$this->db; $res= $this->execute($val); $row= $res->fetchrow(); $this->desart=strtoupper($row['desart']); $this->typart=$row['typart']; $this->codeartfourn=$row['codeartfourn']; $this->idunite=$row['idunite']; $this->ugedscond=$row['ugedscond']; $this->typunitevte=$row['typunitevte']; $this->qteutile=$row['qteutile']; $this->ugedsvte=$row['ugedsvte']; $this->idfourn=$row['idfourn']; $this->idssfamart=$row['idssfamart']; $this->prixcourantvte=$row['prixcourantvte']; $this->prixcourantug=$row['prixcourantug']; $this->prixcourrvte=$row['prixcourrvte']; $this->pxqteutile=$row['pxqteutile']; $this->pxunitecondition=$row['pxunitecondition']; $this->qteminliv=$row['qteminliv']; $this->condliv=$row['condliv']; $this->ddermaj=$row['ddermaj']; } .... }
mais le message d'erreur ne m'aide pas à trouver ou je me trompe.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 if (DB::isError($res)) { die ($res->getDebugInfo(). " ".$res->getMessage()." ".$res->getCode()." ".$res->getUserInfo()); }
merci d'avoir deja tout lu[DB Error: unknown error] DB Error: unknown error -1 [DB Error: unknown error]. Vous avez des proposition à faire je suis ouvert à tout .
Partager