begin process at 2012 05 28 15:26:00
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Base de données

 > 

MySQL

 > 

Ajouter un enregistrement via une liste déroulante


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Ajouter un enregistrement via une liste déroulante

vendredi 4 décembre 2009 à 15:09:26 | Ajouter un enregistrement via une liste déroulante

baltha7

Bonjour à tous,

Voilà mon problème : j'utilise des listes déroulantes dans des pages en PHP pour afficher des données stockées dans une base MySQL, mais j'aimerai savoir si l'inverse est possible, c'est-à-dire que je voudrais pouvoir rajouter un enregistrement en le tapant directement dans cette liste déroulante.
Je suis disposé à utiliser n'importe quelle autre technique qui me permettrait de faire ça simplement. Le but étant de fournir à l'utilisateur les enregistrements de base pour l'application que je suis en train de développer, mais qu'il pourrait personnaliser en rentrant ses propres informations sans avoir besoin d'entrer dans les tables ou de passer par une page de création différente.

Merci pour votre aide en espérant voir été clair dans ma demande.
vendredi 4 décembre 2009 à 16:30:23 | Re : Ajouter un enregistrement via une liste déroulante

robapt

Salut,

je suis pas sûr d'avoir bien compris mais en gros tu veux nourrir une liste sans passer par une base de données ?
Si c'est le cas, sache que quand l'utilisateur raffraichira sa page, la liste sera réinitialisé !
Cependant, tant qu'il n'actualise pas ... la liste ne change pas!
Donc tu dois utiliser du javascript pour faire ça.
Tu creer un champs texte et un bouton, en dessus une list.
Au clique sur le bouton, le texte est ajouté a la liste.
En gros, tu peux faire un truc de ce genre :

document.getElementById('IdList').innerHTML += '<option value="document.getElementById('IdChampText').value">'+document.getElementById('IdChampText').value+'</option>';

Voila, ceci est juste un exemple, il n'est pas optimisé ni rien, c'est juste un exemple pour te montrer comment faire !

Voila !
A+

gaerebut
samedi 5 décembre 2009 à 10:18:25 | Re : Ajouter un enregistrement via une liste déroulante

baltha7

Salut, et merci pour la réponse rapide.

En fait c'est exactement le contraire que je voudrais faire. Ma liste déroulante est alimentée par une table MySQL, mais je voudrais donner la possibilité à l'utilisateur de taper un nouvel enregistrement s'il ne trouve pas ce qu'il a besoin dans la liste, et enregistrer ce nouvel enregistrement dans la table.
Il me semble de mémoire qu'en VB c'était possible via les combo, mais je n'ai plus touché à ça depuis au moins 10 ans et je me disais que peut-être en PHP / Javascript ou autre il y avait un moyen...

Merci encore,

JC
samedi 5 décembre 2009 à 21:13:04 | Re : Ajouter un enregistrement via une liste déroulante

fazni




bonsoir
moi aussi j'ai la meme problem Quelqu'un presenter l'aider
lundi 7 décembre 2009 à 03:57:01 | Re : Ajouter un enregistrement via une liste déroulante

phpAnonyme

Slt,

baltha7 a écrit

Ma liste déroulante est alimentée par une table MySQL, mais je voudrais donner la possibilité à l'utilisateur de taper un nouvel enregistrement s'il ne trouve pas ce qu'il a besoin dans la liste, et enregistrer ce nouvel enregistrement dans la table.

Ben pourquoi ce compliqué quand on peut faire simple ?
Tu peux mettre un champs texte en complément de la liste déroulante !

______________________________________________________________________
lundi 7 décembre 2009 à 06:48:05 | Re : Ajouter un enregistrement via une liste déroulante

baltha7

Oui ça je sais que ça marche. Mais parfois les solutions simples ne suffisent pas pour un besoin précis... En l'occurence, je fais un tableau d'alimentation pour animaux. Sur une même ligne j'ai trois listes, aliment de base, type de fourrage et complément spécial. Rajouté à ça les quantité et la périodicité de la ration alimentaire, je me retrouve avec une ligne à 8 champs de saisie sur une même ligne. Comme je bosse sur une élevage d'une centaine d'animaux, je ne voudrais pas me retrouver avec 2 lignes par animal en rajoutant un champ texte, c'est pour ça que j'aurais aimé utiliser à fond la liste déroulante.
Maintenant si c'est impossible je m'adapterai, mais je suis sûr d'avoir déjà vu des listes où on pouvait introduire une nouvelle valeur, partant de là pourquoi ne pourrait-on pas récupérer et travailler cette nouvelle valeur (contrôle de doublon, enregistrement dans la table) ?

Merci en tous cas pour l'attention apportée à mon problème.

Bonne journée,

JC
lundi 7 décembre 2009 à 14:39:28 | Re : Ajouter un enregistrement via une liste déroulante

sidf

bonjour,

pourquoi ne pas passer simplement par un formulaire de saisie de 8 champs ?
les liste déroulantes ne servant qu'à afficher le contenu de la base mise à jour
(ou éventuellement à sélectionner un enregistrement et afficher les données dans le form pour mise à jour)
lundi 7 décembre 2009 à 19:59:14 | Re : Ajouter un enregistrement via une liste déroulante

baltha7

Bonjour,

Avant tout je tiens sincèrement à remercier tous ceux qui font vivre ce forum en apportant leur contribution, et je ne veux en aucun cas être arrogant ni me fâcher avec qui que ce soit. Mais je pensais avoir été clair dans mon explication, et je trouve décevant qu'on ne me propose que de contourner le problème par un biais ou un autre.
Mon but est de faire un tableau permettant de suivre l'alimentation quotidienne de chevaux dans un élevage de 100 animaux. Dans ce tableau j'ai un nombre d'enregistrements affichés réglable, xx lignes par page à la demande de l'utilisateur. Chaque ligne reprend le nom du cheval, sa ration de fourrage, sa ration de grain, sa ration de complément alimentaire, une périodicité en jour/semaine/mois, bref tout ce qui fait la ration quotidienne d'un cheval. Si sur la même page je peux mettre à jours les ration pour 10, 15, 20, xx chevaux à l'aide de listes déroulantes, ça me parait moins fastidieux que d'aller ouvrir un formulaire pour chaque cheval.
Encore une fois je ne veux offenser personne, j'essaie juste de trouver une solution à un problème particulier et si ça n'est vraiment pas possible comme ça, je m'adapterai.
Merci donc de ne pas me proposer autre chose, et encore merci également d'avoir prêté attention à mon post.
Cordialement,

JC
lundi 7 décembre 2009 à 21:21:46 | Re : Ajouter un enregistrement via une liste déroulante

kohntark

Membre Club
Salut Baltha,

et je trouve décevant qu'on ne me propose que de contourner le problème par un biais ou un autre.


Tu peux trouver ça décevant, mais tu peux également considérer que les avis fournis ne sont pas illégitimes.
Par ailleurs garde à l'esprit que, malgré la bonne description que tu fais, il est très difficile de se faire une idée de ton projet. Exemples : la fréquence des mises à jour, le "niveau" des utilisateurs, leur nombre, l'étendue des choix possibles, ... il y a des dizaines de critères qui sont primordiaux pour parvenir à une structure viable.
Pour se faire une idée et qu'ainsi tu puisses être moins déçu, une petite page en ligne serait une bonne idée.
C'est à mon avis sur cette structure qu'il faudrait que tu réfléchisses, en trouvant un point d'équilibre entre complexité des traitements / efficacité / simplicité d'utilisation (...)
Déjà laisser à l'utilisateur le soin d'entrer de nouvelles données qui feront par la suite partie intégrante des choix (ou non) est dans 95% des cas une très mauvaise idée. Tu parles de "saisie fastidieuse"; j'espère que tu es bien conscient que tu vas galérer grandement pour conserver une base de données saine, parce qu'entre les fautes d'orthographe, de frappe, les divergences de désignation tu aura du fil à retordre.

[etc ...]

Il est impératif de définir des constantes et de modéliser au maximum.

chaque ligne reprend le nom du cheval, sa ration de fourrage, sa ration de grain, sa ration de complément alimentaire, une périodicité en jour/semaine/mois,


sur une même ligne j'ai trois listes, aliment de base, type de fourrage et complément spécial


En lisant ça je me demande bien ce qui nécessiterai des listes déroulantes couplées à l'ajout possible d'un choix.
nom du cheval => select
sa ration de fourrage => text
sa ration de grain => text
sa ration de complément alimentaire => text
une périodicité en jour/semaine/mois => text et select
aliment de base => select
type de fourrage => select
complément spécial => select

Je n'ai aucune connaissance là dedans hein, mais je relève le pari qu'aucun des select ne mérite l'ajout de données utilisateur.

Bref, l'objet de ce message est d'attirer ton attention sur la construction de ta page (et par là même la base, ...) La solution est sans doute là (me répète, je ne connais pas suffisamment le contexte)

Maintenant, si tu souhaites rester sur ton idée, et afin de respecter tes ordres, tout est possible.
Oublie le simple select.
Tu pourrai faire ça avec un combo div / JS / css. Le but serait d'"imiter" un select via un div.
En le cliquant / survolant, un second div contenant les choix de la DB s'afficherait, avec en plus un champ de saisie. Tout ce beau monde étant contenu dans un form et identifié via leurs attributs name dont tu te servirai ensuite pour mettre à jour la base.

Même si ça reste une mauvaise idée, c'est assez facile à réaliser.
Ce ne sont bien sur que les grandes lignes, à toi de voir maintenant.


Cordialement,

Kohntark -

lundi 7 décembre 2009 à 21:51:46 | Re : Ajouter un enregistrement via une liste déroulante

baltha7

Salut Kohntark,

Merci de ta réponse, et encore une fois j'ai l'habitude d'être direct et maladroit c'est pourquoi je m'excusais d'avance si je pouvais offenser qui que ce soit. Tu as raison sur la plupart des points que tu soulèves, et je te remercie pour ton approche finale qui est une solution effectivement (le combo DIV / CSS / JS), et je suis en train d'en tester une autre qui consiste à rajouter un champ hors table dans les options du select, avec un js qui transforme le select en zone text lorsque l'on sélectionne cette option hors table.
La complexité pour moi de mettre une page en ligne est que c'est une application et pas un site web que je développe, et je n'ai pour l'instant pas de serveur d'hébergement je ne travaille qu'en local avec un serveur virtuel et quelquesPC dans mon réseau pour faire des tests.
Le seul point où je ne te rejoins pas, c'est quand tu dis

En lisant ça je me demande bien ce qui nécessiterai des listes déroulantes couplées à l'ajout possible d'un choix.
nom du cheval => select
sa ration de fourrage => text
sa ration de grain => text
sa ration de complément alimentaire => text
une périodicité en jour/semaine/mois => text et select
aliment de base => select
type de fourrage => select
complément spécial => select


en fait la ration de fourrage ça va être de la paille d'avoine, de la luzerne, de la paille de son, etc etc. Pareil pour les différents grains (orge, avoine, maïs), et les compléments avec toutes les vitamines, les minéraux, etc. Ces trois points là nécessitent des select parce que pour cent chevaux il faut imaginer que l'agriculteur / éleveur n'aura pas envie de tout taper dans du texte. Pourquoi l'ajout ? Parce que certains éleveurs font des mélanges, changent d'alimentation, essaient des trucs. Bref c'est une partie très complexe que j'ai discutée avec plusieurséleveurs qui en sont tous arrivés à me dire : "ce serait bien qu'on puisse constituer notre propre liste au fur et à mesure".
Donc je voulais éviter de passer par un formulaire de création et essayer de leur rendre le truc simple. Evidemment je galère derrière pour les controles de doublons, les fautes de frappe etc, mais c'est un choix.
Bon je ne vais pas faire plus long, étant sur un sujet qui me passionne je ne voudrais pas te "gaver" trop.
En tous cas merci encore, ainsi qu'à ceux qui ont répondu précédemment, et encore désolé si j'ai pu paraître blessant.

Bonne soirée et bonne prog !

JC

1 2

Cette discussion est classée dans : base, enregistrement, liste, ajouter, déroulante


Répondre à ce message

Sujets en rapport avec ce message

Liste déroulante lié a une base MySQL [ par pi0up51 ] Je sais faire ça en asp mais pas en php, ça doit pas être bien compliqué mais si qqn peut m'aider ;)@tte et bonn' prog'pi0up51http://www.progotop.ht.s formulaire [ par plume83 ] bonjour, j'ai créé un formulaire dans lequel j'ai mis une liste déroulante dans laquelle je veux faire afficher la référence des chaussures de la base Espace liste déroulante... [ par rigaudstar ] Bonjour à tous,J'ai créé une page php avec une liste déroulante qui puise des informations (ici des noms et prénoms)dans une base access...Mon problèm liste déroulante et php [ par ansdodou ] Salut J'ai un probleme assez étrange. je suis parvenu à lister les données de ma base de données dans ma liste déroulant. mais lorsque je veux effectu Liste déroulante, base de données et champs de texte [ par tenrod ] Bonjour a tous j'aimerai pouvoir mettre à jour un champs de texte à partir de ce que j'ai sélectionné dans une liste déroulante...Je m'explique:J'ai c Page admin pour ajouter des enregistrement dans un base SQL [ par destiny ] Bonjour all :)Alors, d'une page admin (avec formulaire) je voudrais ajouter des enregistrements dans la tables news par exemple! comment faire???jvois Liste déroulante et base mysql [ par Pestouille ] Bonjour tout le monde !Voilà mon petit soucis : j'ai une liste déroulante que je charge par le biais d'une requete sql !! Jusque là aucun problème !!E Liste déroulante et base de données [ par flopad ] Salut tout le monde!!J'ai une base de données contenant des références. Je veux donner la possibilité aux users de rechercher via une liste déroulante Liste déroulante remplie par une requête SQL [ par boninou ] Bonsoir à tous ! Je suis en train de développer un site web en PHP/MySQL pour gérer la base de données du réseau d'un lycée. Ma base estdonc comosée liste déroulante intuitive [ par agbani ] salut, mon probleme est le suivant .alors qu'il m'est possible de générer dynaquement avec un peu de requette une liste déroulante de champs d'une tab


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 6,053 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales