Insert into
pierre
-
jordane45 Messages postés 40050 Statut Modérateur -
jordane45 Messages postés 40050 Statut Modérateur -
Bonjour,
j'ai mis ca sur la page inscription
là , ca s'enregistre bien dans la base sql
mais si je rajoute un champs dans ma able sql membre-signature et membre-blabla etc... donc 141 champs
es-ce qu'il faut que je met tout mes champs sur inser into dont mes 141 champs ;)
ou on peut reduire le code et que ca puisse enregistré sanbs qu'ils me disent qu'il manque un champs
merci
j'ai mis ca sur la page inscription
$query = $db->prepare('INSERT INTO forum_membre (membre_pseudo, membre_mdp, membre_email, membre_prenom, membre_actuellement, membre_sexe, membre_recherche, membre_datenaissance, membre_pays, membre_departement, membre_region, membre_ville, membre_inscrit)
VALUES (:pseudo, :pass, :email, :prenom, :actuellement, :sexe, :rechercher, :handicaper, :datenaissance, :pays, :departement, :region, :ville, :temps)');
$query->bindValue(':pseudo', $pseudo, PDO::PARAM_STR);
$query->bindValue(':pass', password_hash($pass, PASSWORD_BCRYPT), PDO::PARAM_STR);
$query->bindValue(':email', $email, PDO::PARAM_STR);
$query->bindValue(':prenom', $prenom, PDO::PARAM_STR);
$query->bindValue(':actuellement', $actuellement, PDO::PARAM_STR);
$query->bindValue(':sexe', $sexe, PDO::PARAM_STR);
$query->bindValue(':rechercher', $rechercher, PDO::PARAM_STR);
$query->bindValue(':datenaissance', $datenaissance, PDO::PARAM_STR);
$query->bindValue(':pays', $pays, PDO::PARAM_INT);
$query->bindValue(':departement', $departement, PDO::PARAM_INT);
$query->bindValue(':region', $region, PDO::PARAM_INT);
$query->bindValue(':ville', $ville, PDO::PARAM_INT);
$query->bindValue(':temps', $temps, PDO::PARAM_STR);
$query->execute();
là , ca s'enregistre bien dans la base sql
mais si je rajoute un champs dans ma able sql membre-signature et membre-blabla etc... donc 141 champs
es-ce qu'il faut que je met tout mes champs sur inser into dont mes 141 champs ;)
ou on peut reduire le code et que ca puisse enregistré sanbs qu'ils me disent qu'il manque un champs
merci
Configuration: Windows / Chrome 80.0.3987.163
A voir également:
- Insert into
- Touche insert - Guide
- Disk boot failure insert system disk and press enter - Guide
- Insert boot media in selected boot device and press a key ✓ - Forum Windows 10
- Activer touche insert sur ASUS UX32A - Forum Clavier
- Monitor will go into standby mode traduction français ✓ - Forum Matériel & Système
1 réponse
Bonjour,
Plusieurs choses me chagrinent dans ta question/ ton code...
Déjà :
pas besoin de mettre le mot "membre_" devant chaque nom de champ....
Tu es dans la table membre.. donc on se doute bien que le pseudo, le mail.... sont ceux des membres.
Il faut que les noms de tes champs soit explicites... mais aussi le plus court possible.
C'est un gain de temps en maintenance et en écriture du code.
Ensuite,
141 champs ??? ... attention.. une table sql.. ce n'est pas un tableau excel !
Il y a certainement des champs que tu pourrais regrouper dans d'autres tables.
par exemple, les champs
pourraient se trouver dans une table membre_adresse
Dis toi que plus du as de champs dans une table ... plus tes requêtes risquent d'être ralenties...
Et pour répondre à ta question, seuls les champs que tu veux renseigner et ceux pour lesquels tu n'as pas défini de valeur par défaut ( à moins que tu aies autorisé les valeurs null ) sont à écrire dans ta requête.
Plusieurs choses me chagrinent dans ta question/ ton code...
Déjà :
pas besoin de mettre le mot "membre_" devant chaque nom de champ....
Tu es dans la table membre.. donc on se doute bien que le pseudo, le mail.... sont ceux des membres.
Il faut que les noms de tes champs soit explicites... mais aussi le plus court possible.
C'est un gain de temps en maintenance et en écriture du code.
Ensuite,
141 champs ??? ... attention.. une table sql.. ce n'est pas un tableau excel !
Il y a certainement des champs que tu pourrais regrouper dans d'autres tables.
par exemple, les champs
pays, departement, region, ville
pourraient se trouver dans une table membre_adresse
id, id_membre, pays, departement, region, ville
Dis toi que plus du as de champs dans une table ... plus tes requêtes risquent d'être ralenties...
Et pour répondre à ta question, seuls les champs que tu veux renseigner et ceux pour lesquels tu n'as pas défini de valeur par défaut ( à moins que tu aies autorisé les valeurs null ) sont à écrire dans ta requête.
il y as que 6 champs pour la page inscription et 130 champs pour la page profil
ce n'est pas grave , je vais copier mes 141 table sur la page
es-ce que je dois copier tout mes tables des champs ou es-ce qu'il y a moyen de regrouper tout
merci
Je t'ai conseillé de découper cette Table en PLUSIEURS tables.
Typiquement... pour les photos par exemple.. là tu as les champs
Elles devraient se trouver dans une table à part nommée, par exemple : membre_photos
avec les champs
La recherche également devrait se trouver dans une table à part,
Les loisirs dans une table à part
Le paraignage dans une table à part
etc......
C'est le principe d'une Base de données Relationnelle .....
Je t'ai également indiqué qu'il n'était pas nécessaire de préfixer le nom de tes champs par le mot "membre" ....
As tu lu la réponse que je t'avais donné avant... ??
T'es tu un minimum renseigné sur le fonctionnement d'une base de données ? Comment la concevoir ?
As tu réalisé un MCD ou MPD de cette BDD avant de te lancer ?
As tu réaliser un cahier des charges et un découpage fonctionnel de ton projet avant de commencer à écrire des lignes de code ???
Tu sais... la programmation c'est avant tout de la réflexion.
En général, on pose sur papier ( cahier des charges/découpage fonctionnel, MCD, MPD... ) et SEULEMENT APRÈS.. on commence à coder.
Je doute un peu que tu aies fais ce travail avant.... je t'invite à tout stopper et à t'y mettre.
Ce temps de réflexion/conception que tu feras en amont évitera de te trouver à coder des choses alambiquées et t'aider à mieux cerner les moyens d'aboutir au résultat es-conté.
et je ferais 15 tables ou 10 tables en plus en regroupant
sinon une derniere chose
qd je m'inscrit le membre_id au liu de me mettre le chiffre 1 il met toujours null
si tu peut dire pour quoi