Bonsoir tous
j'ai utilisé dans mon application la notion du POO du PHP et aussi la notion du PDO (mes besoins fonctionnels du projet) donc voilà mes classes
classe db:
classe catégories:
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 <?php class Database { private $pdo = null; private db_name = "projet"; private db_user = "postgres"; private db_pass = "1230"; private db_host = "localhost"; private function connect_db() { if ($this->pdo === null) { try { $p= new PDO('pgsql:host=$this->db_host;port=5433; dbname=$this->db_name; host=$this->db_host; username=$this->db_user; password=$this->db_pass'); $p->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING ); $this->pdo = $p; } catch (PDOException $ex) { echo 'erreur de la connexion à la BD : ' . $ex->getMessage(); die(); /* Fermeture de la connection */ pg_close($pdo); } } return $this->pdo; }
-dans la page ajouter catégories j'ai fait le code php suivant pour assurer l'insertion:
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 <?php require "Database.php"; class Categories extends Database{ public function __construct() { $this->pdo = new Database(); } public function add($nom="",$date="",$type="") { if ($nom && $date && $type) { $qry = $this->pdo->pg_prepare("INSERT INTO catg (nom,date_creation,type) VALUES (?, ?, ?)"); $qry->pg_execute(array($nom,$date,$type)); } return $qry; } }
le probléme que j'ai peux pas insérer des données dans la base postgresql, j'en sais pas s j'a un probléme au niveau de la fonction add..! il affiche toujours "date ou nom ou type de la categorie est invalide"(les paramètres sont bien passé mais l'insertion ne fonctionne pas)
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 <?php require("Categories.php"); //classe categories if(isset($_POST['save'])){ //bouton var_dump($_POST); if(isset($_POST['date']) && isset($_POST['nom']) && isset($_POST['type']) ){ //les champs html $dd=htmlentities($_POST['date']); $nn=htmlentities($_POST['nom']); $tt=htmlentities($_POST['type']); $categorie = new Categories(); $i= $categorie->add($dd,$nn,$tt); if($i){ header('Location:listes.php'); }else{ header('Location:add.php?erreur="date ou nom ou type de la categorie est invalide"'); } } } ?>
s'il vous aide moi
MERCI
Partager