MYSQL ajout automatique de champs dans ma table
10 messages • Page 1 sur 1
Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics
MYSQL ajout automatique de champs dans ma table
Bonjour,
j'ai un formulaire sur lequel l'utilisateur peut ajouter des champs de texte a sa guise le nom du champs de texte reste le même et s'incrémente de 1 à chaque ajout.
jusque la tout va bien.
Mon problème se pose lors de la récupération des données je souhaite insérer les données dans ma table et créer automatiquement les champs inexistants de la table.
Exemple : l'utilisateur saisis ses données champs1, champs2, champs3
et dans ma table je n'ai que le champs champs1.
Comment faire pour ajouter champs2, champs3 automatiquement dans ma table?
Merci pour votre aide et vos précieux conseils.
j'ai un formulaire sur lequel l'utilisateur peut ajouter des champs de texte a sa guise le nom du champs de texte reste le même et s'incrémente de 1 à chaque ajout.
jusque la tout va bien.
Mon problème se pose lors de la récupération des données je souhaite insérer les données dans ma table et créer automatiquement les champs inexistants de la table.
Exemple : l'utilisateur saisis ses données champs1, champs2, champs3
et dans ma table je n'ai que le champs champs1.
Comment faire pour ajouter champs2, champs3 automatiquement dans ma table?
Merci pour votre aide et vos précieux conseils.
- Code: Tout sélectionner
ALTER TABLE `taTable` ADD `tonChamp` VARCHAR (255) NOT NULL ;
Note que j'ai mis VARCHAR par défaut. Mais je te conseille de proposer de changer ce type.
kazhar a écrit:
- Code: Tout sélectionner
ALTER TABLE `taTable` ADD `tonChamp` VARCHAR (255) NOT NULL ;
Note que j'ai mis VARCHAR par défaut. Mais je te conseille de proposer de changer ce type.
ou alors tu crées une table avec le nb max de champs possible
et en clé primaire ya bien sur l'id de l'utilisateur
ok pour le alter table add que je connaissais, mais ce que je cherche a faire c'est créer des champs automatiquement dans ma table en fonction du nombre de champs utilisés par l'utilisateur lors dela saisie de son formulaire.
webac a écrit:ok pour le alter table add que je connaissais, mais ce que je cherche a faire c'est créer des champs automatiquement dans ma table en fonction du nombre de champs utilisés par l'utilisateur lors dela saisie de son formulaire.
mais pourquoi vouloir créer des tables spécifiques en fonction des utilisateurs ?
-

nickargall - WRInaute accro

- Messages: 5295
- Inscription: Lun Juin 13, 2005 14:13
..Et de devoir faire gaffe si tu as des requetes antérieures d'insertion de champs dans ces nouvelles tables ... moi non plus je ne vois pas l'utilité.
Si tu veux pouvoir enregistrer des éléments dont le nombre diffère selon l'utilisateur, Vaut mieux jouer avec une deuxième table.
Première table user
id_user| nom | prenom | etc...
1 |Duran| Pierre | ...
2 | Dupond | Etienne | ...
Deuxième table champ
id_champ | champ | valeur | id_user
1 | couleur| verte | 1
2 | prix | pas cher| 1
3 | volant | moumoute | 1
4 | couleur | bleue | 2
5 | volant | cuir | 2
Si tu veux pouvoir enregistrer des éléments dont le nombre diffère selon l'utilisateur, Vaut mieux jouer avec une deuxième table.
Première table user
id_user| nom | prenom | etc...
1 |Duran| Pierre | ...
2 | Dupond | Etienne | ...
Deuxième table champ
id_champ | champ | valeur | id_user
1 | couleur| verte | 1
2 | prix | pas cher| 1
3 | volant | moumoute | 1
4 | couleur | bleue | 2
5 | volant | cuir | 2
Je sais que je réponds un peu tard mais j'éspere que vous m'apporterez un peu plus de détails car j'avoue que je ne saisis pas trop.
Voici la structure de mes tables
table1
`societe` varchar(255) NOT NULL default '',
`personne` varchar(255) NOT NULL default '',
`tel` varchar(255) NOT NULL default '',
`fax` varchar(255) NOT NULL default '',
`adresse` varchar(255) NOT NULL default '',
`cp` varchar(255) NOT NULL default '',
`ville` varchar(255) NOT NULL default '',
`email` varchar(255) NOT NULL default '',
`login` varchar(255) NOT NULL default '',
`mdp` varchar(255) NOT NULL default '',
`obs` varchar(255) NOT NULL default '',
`statut` varchar(255) NOT NULL default 'inactif'
table2
`rma` varchar(255) NOT NULL default '',
`fournisseur` varchar(255) NOT NULL default '',
`marque` varchar(255) NOT NULL default '',
`ref` varchar(255) NOT NULL default '',
`facture` varchar(255) NOT NULL default '',
`serie` varchar(255) NOT NULL default '',
`typepanne` varchar(255) NOT NULL default '',
`statut` varchar(255) NOT NULL default 'Non recu',
`login` varchar(255) NOT NULL default '',
Les champs que je cherche à ajouter automatiquement sont fournisseur2, marque2, ref2, serie2, typepanne2 et ainsi de suite fournisseur3...
Comment faire pour connaître les champs qui ont été ajoutés par l'utilisateur et les ajouter à ma table?
merci encore pour votre aide
Voici la structure de mes tables
table1
`societe` varchar(255) NOT NULL default '',
`personne` varchar(255) NOT NULL default '',
`tel` varchar(255) NOT NULL default '',
`fax` varchar(255) NOT NULL default '',
`adresse` varchar(255) NOT NULL default '',
`cp` varchar(255) NOT NULL default '',
`ville` varchar(255) NOT NULL default '',
`email` varchar(255) NOT NULL default '',
`login` varchar(255) NOT NULL default '',
`mdp` varchar(255) NOT NULL default '',
`obs` varchar(255) NOT NULL default '',
`statut` varchar(255) NOT NULL default 'inactif'
table2
`rma` varchar(255) NOT NULL default '',
`fournisseur` varchar(255) NOT NULL default '',
`marque` varchar(255) NOT NULL default '',
`ref` varchar(255) NOT NULL default '',
`facture` varchar(255) NOT NULL default '',
`serie` varchar(255) NOT NULL default '',
`typepanne` varchar(255) NOT NULL default '',
`statut` varchar(255) NOT NULL default 'Non recu',
`login` varchar(255) NOT NULL default '',
Les champs que je cherche à ajouter automatiquement sont fournisseur2, marque2, ref2, serie2, typepanne2 et ainsi de suite fournisseur3...
Comment faire pour connaître les champs qui ont été ajoutés par l'utilisateur et les ajouter à ma table?
merci encore pour votre aide
je vais attirer ton attention sur certains points choquants concernant ta demande puisque personne le l'a encore fait
une base de donnée contient des tables dans lesquelles on va insérer des données et d'où l'on va tirer des extraits
il n'a jamais été question de pouvoir les altérer en cour de route
un lock table qui foire et t'as plus de table
l'optimisation de secu tend à diminuer au maximum les privileges du mysql user qui va effectuer les requêtes, hors dans ton shema le user est a pratiquement plein pouvoir sur les tables
je pense que la relation entre tes tables est mal conçue et à ta place je refléchirai à une methode différente style merise
rog
une base de donnée contient des tables dans lesquelles on va insérer des données et d'où l'on va tirer des extraits
il n'a jamais été question de pouvoir les altérer en cour de route
un lock table qui foire et t'as plus de table
l'optimisation de secu tend à diminuer au maximum les privileges du mysql user qui va effectuer les requêtes, hors dans ton shema le user est a pratiquement plein pouvoir sur les tables
je pense que la relation entre tes tables est mal conçue et à ta place je refléchirai à une methode différente style merise
rog
Re: MYSQL ajout automatique de champs dans ma table
webac a écrit:Mon problème se pose lors de la récupération des données je souhaite insérer les données dans ma table et créer automatiquement les champs inexistants de la table.
= marque d'un problème de conception ...
repense ton modèle tu ne devrais jamais te trouver dans un tel scénario, c'est contraire a la philosophie d'un SGBD.
10 messages • Page 1 sur 1
Formation recommandée sur ce thème :
Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.
Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.
Lectures recommandées sur ce thème :
- Sortie officielle de GoogleStats v2.0 !
- Sortie de GoogleStats v2.01
- AdSense Tracking : statistiques détaillées sur les clics AdSense
- Google Toolbar 2.0 (version beta)
- GoogleStats : analyse temps réel des visites de Google sur votre site
- Les pays gérés par la Google Toolbar 2.0
- Yahoo Slurp et autres robots d'indexation de Yahoo
- Services et outils de Yahoo! Search
- Parts de marché des moteurs aux USA (Octobre 2006)
- Gestion des langues et des sessions en PHP / MySQL
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité







le forum