Insérer des données dans une table

Arbitta Messages postés 84 Statut Membre -  
Danelectro Messages postés 1844 Date d'inscription   Statut Membre Dernière intervention   -
bonjour ,
j'ai une table eleve qui hérite de la table personne .
je veut Ajouter un nouveau eleve en passant par un formulaire d'inscription :
voici la classe personne :
class personne{
 private $email;
  private $motdePass; 
//Constructeur 
 public function __Construct($e,$m)
  {     $this->email=$e;  
   $this->motdePass=$m;} 
//ajout
public function ajouter()
  { global $c;
$sql= $c->exec("insert into personne values('".$this->email."','".$this->motdePass);
 return $sql;
    }
}

voici la classe eleve :
class eleve extends personne{
        private $email;
  private $motdePass;
 private $nom;
 private $prenom;
   public function __Construct($e,$m,$n,$p)
    {
 parent::__Construct($e,$m);
 $this->nom=$n;
 $this->prenom=$p;
 }

public function ajouter()
  { global $c;
$sql= $c->exec("insert into eleve values('".$this->email."','".$this-> motdePass."','".$this->nom."','".$this->prenom."')");
return $sql;
  }

}

j'ai essayé ça mais il ne marche pas!!! est ce que j'appel le constructeur de la classe mére dans la classe fille?
quesque je fait ?
merci .

1 réponse

  1. Danelectro Messages postés 1844 Date d'inscription   Statut Membre Dernière intervention   375
     
    Salut,
    Utilise cette fonction : https://www.php.net/manual/fr/pdo.prepare.php
    0
    1. Arbitta Messages postés 84 Statut Membre
       
      j'ai pas compris comment je peut l'inclure dans ma page ?? pouvez vous m'expliquer un peut plus s'il vous plait.
      0
    2. Danelectro Messages postés 1844 Date d'inscription   Statut Membre Dernière intervention   375
       
      Tu utilises quoi pour te connecter à la BDD ? PDO, sqli ?
      0
    3. Arbitta Messages postés 84 Statut Membre
       
      j'utilise PDO
      0
    4. Danelectro Messages postés 1844 Date d'inscription   Statut Membre Dernière intervention   375
       
      Ok, donc tu peux utiliser PDO::prepare().
      En gros tu vas "binder" des variables dans ta requete, et tu vas l'exécuter plus tard en précisant par quoi remplacer ces variables.

      Par exemple (je reprends celui de la doc) :
      $sql = 'SELECT nom, couleur, calories FROM fruit WHERE calories < :calories AND couleur = :couleur';
      $req = $bdd->prepare($sql);

      ":calories" et ":couleur" sont des variables. Ensuite il suffira de faire ceci :
      $req->execute(Array(":calories" => 150, ":couleur" => vert));

      Tu peux aussi mettre des "?" à la place des ":variables", et il faudra juste passer un tableau de la liste des valeurs à execute().
      0