![]() |
Bienvenue invité ( Connexion | Inscription )
![]() |
![]()
Message
#1
|
|
![]() Macbidouilleur d'argent ! ![]() ![]() ![]() Groupe : Membres Messages : 792 Inscrit : 14 Nov 2003 Lieu : Genève Membre no 11 656 ![]() |
Bonjour,
J'ai un problème d'insertion dans une base de données mysql en PDO. Une insertion basique se faisant ainsi : Code $sql = "INSERT INTO users (id, name, surname) VALUES (?,?,?)"; $pdo->prepare($sql)->execute([$id, $name, $surname]); ... en inscrivant tous les champs et leurs valeurs. Comment insérer une ligne "vide" avec les valeurs par défaut de MySql ? Ceci ne fonctionnant pas : Code $sql = "INSERT INTO $table () VALUES ()"; $pdo->prepare($sql)->execute(); Note : Je suis sous sous php 7.3 D'avance, je vous remercie pour vos lumières ! |
|
|
![]() |
![]()
Message
#2
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 4 915 Inscrit : 1 Jul 2010 Membre no 156 073 ![]() |
Comment insérer une ligne "vide" avec les valeurs par défaut de MySql ? Ceci ne fonctionnant pas : Code $sql = "INSERT INTO $table () VALUES ()"; $pdo->prepare($sql)->execute(); Je viens de tester avec succès : Code $requete = $bdd->prepare('INSERT INTO machin() VALUES()'); $requete->execute(); $requete->closeCursor(); Les valeurs par défaut des champs sont bien appliquées aux champs de la nouvelle ligne. Autre exemple pour insérer la valeur par défaut pour un seul champ : Code $requete = $bdd->prepare('INSERT INTO machin(prenom, nom, age) VALUES(:prenom, :nom, DEFAULT)'); $requete->execute(array( 'prenom' => $prenom, 'nom' => $nom )); $requete->closeCursor(); Le champ "age" a bien la valeur par défaut. Bien entendu, je ne me préoccupe pas de sécurité ici (voir le post de Jaypee). Ce message a été modifié par scoch - 11 Jul 2019, 11:08. -------------------- L'homme n'est que poussière... c'est dire l'importance du plumeau ! Alexandre Vialatte
|
|
|
![]() ![]() |
Nous sommes le : 5th July 2025 - 14:36 |