Comment faires des insertion multiples mysql
Fermé
rofinho
Messages postés
17
Date d'inscription
lundi 30 septembre 2013
Statut
Membre
Dernière intervention
25 février 2015
-
11 déc. 2013 à 13:58
heliconius Messages postés 539 Date d'inscription mardi 1 juillet 2008 Statut Membre Dernière intervention 23 juin 2023 - 6 janv. 2014 à 14:11
heliconius Messages postés 539 Date d'inscription mardi 1 juillet 2008 Statut Membre Dernière intervention 23 juin 2023 - 6 janv. 2014 à 14:11
A voir également:
- Comment faires des insertion multiples mysql
- Insertion liste déroulante excel - Guide
- Insertion table des matières word - Guide
- Insertion signature word - Guide
- Insertion filigrane word - Guide
- Mysql community server - Télécharger - Bases de données
2 réponses
Utilisateur anonyme
11 déc. 2013 à 14:22
11 déc. 2013 à 14:22
bonjour, je suis étudiant en info , et je fais de al abse de donénes en ce moment .
je ne sais pas utiliser mysql , mais tu peux créer un fichier sql tel que celui-ci (exemple pris de mon tp , désolé ^):
insert into cage(numc,lieu,type) values (6,'lieu6','cage6');
insert into cage(numc,lieu,type) values (7,'lieu7','cage7');
insert into soccupe(numg,numc) values (10,1);
insert into soccupe(numg,numc) values (20,1);
insert into soccupe(numg,numc) values (10,2);
ensuite tu éxécute simplement le ficheir sql , et il fera toute les commandes a la suite , et donc en une éxécution tu peux tout remplir.
je ne sais pas utiliser mysql , mais tu peux créer un fichier sql tel que celui-ci (exemple pris de mon tp , désolé ^):
insert into cage(numc,lieu,type) values (6,'lieu6','cage6');
insert into cage(numc,lieu,type) values (7,'lieu7','cage7');
insert into soccupe(numg,numc) values (10,1);
insert into soccupe(numg,numc) values (20,1);
insert into soccupe(numg,numc) values (10,2);
ensuite tu éxécute simplement le ficheir sql , et il fera toute les commandes a la suite , et donc en une éxécution tu peux tout remplir.
heliconius
Messages postés
539
Date d'inscription
mardi 1 juillet 2008
Statut
Membre
Dernière intervention
23 juin 2023
139
Modifié par heliconius le 6/01/2014 à 14:44
Modifié par heliconius le 6/01/2014 à 14:44
Bonjour,
apriori et à défaut d'informations supplémentaires, tu peux passer par un tableau. Il semble bien qu'il y aura 100 zones de saisie pour les salaires des 100 agents. Le nom de la zone pourra être un tableau. Exemple :
Dans le script de traitement, tu récupères un tableau dans $_POST["salaires"]
J'ai déjà utilisé à de nombreuses reprises des tableaux comme noms de zone de saisie et ça marche très bien. Seulement, fait comme cela, les indices de tableau iront de 0 à 99. Et je doute que tu aies un agent n° 0.
Je n'ai pas essayé mais je pense que ça devrait marcher : mettre comme indice de tableau, l'ID de l'agent :
Je suppose que la variable $resultat contient le résultat de la requete suivante :
Avec PHP, la construction du tableau de saisie des salaires dans ton formulaire pourrait être :
NB: le onsubmit="return verif()' exécutera, lors de la soumission du formulaire, la fonction javascript verif() (que tu auras à écrire dans ta page).
Tu pourrais faire (pour vérifier) un fichier de traitement tel que :
Si à chaque élément de tableau indicé par l'ID de l'agent tu as bien le salaire correspondant, tu pourrais alors, dans le véritable script de traitement, parcourir ton tableau pour enregistrer (ou mettre à jour) le salaire dans une ou plusieurs tables.
Dis-moi s'il y a un souci ou coche comme résolu si cela satisfait ton problème.
Un problème sans solution est un problème mal posé. (Albert Einstein)
apriori et à défaut d'informations supplémentaires, tu peux passer par un tableau. Il semble bien qu'il y aura 100 zones de saisie pour les salaires des 100 agents. Le nom de la zone pourra être un tableau. Exemple :
<form method="post" ... ...> <input type="text" name="salaires[]">
Dans le script de traitement, tu récupères un tableau dans $_POST["salaires"]
J'ai déjà utilisé à de nombreuses reprises des tableaux comme noms de zone de saisie et ça marche très bien. Seulement, fait comme cela, les indices de tableau iront de 0 à 99. Et je doute que tu aies un agent n° 0.
Je n'ai pas essayé mais je pense que ça devrait marcher : mettre comme indice de tableau, l'ID de l'agent :
<input type="text" name="salaires[1]"> <input type="text" name="salaires[2]"> <input type="text" name="salaires[n]">
Je suppose que la variable $resultat contient le résultat de la requete suivante :
SELECT id,nom,prenom FROM ta_table_agents ORDER BY nom,prenom;
Avec PHP, la construction du tableau de saisie des salaires dans ton formulaire pourrait être :
echo "<form method='post' action='traitement.php' onsubmit='return verif()'>\n"; echo "<table border="1">\n"; echo "<tr><th>ID</th><th>Agent</th><th>Salaire</td>\n"; while($r = mysql_fetch_object($resultat)) { echo "<tr>"; echo " <td>$r->id</td>"; echo " <td>$r->nom $r->prenom</td>"; echo " <td><input type='text' value='salaires[$r->id]'></td>"; echo "</tr>\n"; } echo "<input type='submit' name='submit' value='Enregistrer'>\n"; echo "</table>\n";
NB: le onsubmit="return verif()' exécutera, lors de la soumission du formulaire, la fonction javascript verif() (que tu auras à écrire dans ta page).
Tu pourrais faire (pour vérifier) un fichier de traitement tel que :
if($_POST["salaires"]) { $salaires = $_POST["salaires"]; } if($salaires) { echo "<pre>"; echo print_r($salaires); echo "</pre>"; }
Si à chaque élément de tableau indicé par l'ID de l'agent tu as bien le salaire correspondant, tu pourrais alors, dans le véritable script de traitement, parcourir ton tableau pour enregistrer (ou mettre à jour) le salaire dans une ou plusieurs tables.
Dis-moi s'il y a un souci ou coche comme résolu si cela satisfait ton problème.
Un problème sans solution est un problème mal posé. (Albert Einstein)
12 déc. 2013 à 12:23
12 déc. 2013 à 12:44
20 déc. 2013 à 11:38
Tu dis que tu as près de 400 agents, mais de toute manière, ils n'ont pas tous le même salaire ?
Et la liste de tes salaires, se trouvent-elles dans une table tierce ?
Si tu dois insérer pour chaque agents un salaire différent, et que tu n'as pas d'interface, tu vas malheureusement être obliger de tous les faire manuellement.
Sauf si tes salaires sont déjà dans une autre table, ou que tu as un fichier, ou autre ...