2 pièce(s) jointe(s)
Mon INSERT INTO ne fonctionne pas à l'aide
Bonjour,
Je suis en train de développer une application web et j'ai un petit souci sur mon code php.
J'ai une méthode ajouter de ma classe Theme qui ajoute dans ma base de donnée un thème avec son ID (en auto increment) et son libellé.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| <?php
class Theme
{
private $id_theme;
private $libelle;
private $bdd;
public function __construct($libelle, Bdd $bdd){
$this->libelle = $libelle;
$this->bdd = $bdd->getBdd();
}
public function ajouter(){
$req = $this->bdd->prepare("INSERT INTO theme (LIBELLE) VALUES=(?)");
$req->bindParam(1, $this->libelle);
$req->execute();
}
} |
Quand je teste la fonctionnalité ajouter d'un object Theme il ne m'insère rien dans la base de donnée :
Code:
1 2 3 4 5 6 7 8 9 10
|
require('../classes/Bdd.php');
require '../classes/Theme.php';
$bdd = new Bdd();
$theme = new Theme("Le corps humain",$bdd);
$theme->ajouter(); |
(Pour le tester j’exécute ma page teste sur le serveur comme il n'y a pas de méthode main en php).
Résultat :
Pièce jointe 423796
Alors le problème ne vient pas de ma connexion à la base de donnée ni ma classe Bdd car j'ai effectué un test avec un SELECT SQL et j'arrive à avoir les informations que je souhaite :
Code:
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
|
class Theme
{
private $id_theme;
private $libelle;
private $bdd;
public function __construct($libelle, Bdd $bdd){
$this->libelle = $libelle;
$this->bdd = $bdd->getBdd();
}
public function ajouter(){
$req = $this->bdd->prepare("INSERT INTO theme (LIBELLE) VALUES=(?)");
$req->bindParam(1, $this->libelle);
$req->execute();
}
public function testSelect(){
$test= $this->bdd->prepare("SELECT * FROM theme");
$test->execute();
var_dump($test->fetchAll());
}
} |
Le fichier test que j'execute sur le serveur :
Code:
1 2 3 4 5 6 7 8 9 10
|
require('../classes/Bdd.php');
require '../classes/Theme.php';
$bdd = new Bdd();
$theme = new Theme("Mathématiques",$bdd);
$theme->testSelect(); |
Résultat :
Pièce jointe 423803
Voila j'ai cherché sur le net mais je ne trouve pas un sujet sur mon problème. Votre aide est donc la bienvenue. Merci .