2010-05-10 3 views
0

Apparemment, il y avait confusion quant à mon message d'origine alors laissez-moi recommencer:possible de former dynamique génération utilisant les variables globales PHP

Je crée essentiellement un panier d'achat en ligne qui donne un gestionnaire la possibilité d'inscrire son/sa employés pour les services de formation que nous fournissons. Nous facturons 49 $ pour les services pour chaque employé inscrit. La principale différence entre ce panier et un panier d'achat traditionnel est cependant que nous devons recueillir une quantité solide de données sur «chaque» employé inscrit au programme - et cette information est fournie par l'employeur au moment de l'inscription/achat.

En tant que responsable, je saisis mes informations personnelles, puis sélectionne le nombre d'employés que je souhaite inscrire. J'ai actuellement le site mis en place pour gérer 7 employés, mais en a besoin pour gérer jusqu'à ~ 30. Le problème que j'ai est le manque de capacité dynamique et la taille des fichiers énormes (en particulier sur la validation) que je rencontre.

Les informations de chaque combattant sont transmises et stockées dans des super globales de session telles que: $ _SESSION ['F1Firstname']; et $ _SESSION ['F1SSN3']; etc. Je ne veux pas utiliser javascript (et je ne veux pas) pour ajouter un autre bouton Enrollee car cela peut être désactivé facilement du côté client.

Mes hypothèses sont ceci:

1) Je dois être en mesure d'ajouter dynamiquement des variables à chaque nouveau combattant afin qu'ils puissent être stockés dans une base de données en ligne, puis transmises à notre centre d'essai - par exemple, emplotyee 1 de le nom est F1FirstName; date de naissance de l'employé 12 est F12DOB1 et ainsi de suite.

2) La validation pour chaque employé sera la même en fonction de chaque champ individuel (tous les prénoms doivent réussir le même test). La validation de toutes les adresses e-mail doit avoir passé le même test de validation de l'e-mail et ainsi de suite. Si je construis simplement ceci par chaque enregistrement individuel le fichier de validation sera très grand. Je pense que j'ai besoin d'ajouter un tableau de prénom en quelque sorte mais je ne suis pas entièrement sûr.

3) J'ai besoin que ce soit évolutif que dans le sens, je veux un gestionnaire d'inscrire jusqu'à 100 employés, il/elle peut. 4) Comme je l'ai mentionné, cela ressemble à un panier d'achat. Ainsi, un responsable inscrit tous les employés à la fois pour qu'ils puissent payer TOUS leurs employés en une seule transaction.

Quelqu'un a-t-il des idées?

+1

Peut-être que c'est juste moi mais je suis confus ce que vous demandez exactement. – Jack

+0

Non, moi aussi. Sa question est mal formulée. – Galen

+0

J'ai reformulé la question - s'il vous plaît laissez-moi savoir si je peux clarifier davantage. – JM4

Répondre

0

Vous pouvez générer des champs supplémentaires en javascript. Il suffit d'ajouter un bouton 'ajouter boxer' et il n'y aura pas beaucoup de champs cachés.

+0

Merci pour la suggestion - j'ai joué avec cette idée, cependant: 1) si javascript est désactivé cela ne fonctionne pas 2) si j'ai utilisé javascript, je devrais encore dynamiquement «nommer» chaque champ avec chaque boxer supplémentaire ajouté (par exemple, 3 sont inscrits, le gestionnaire clique sur "ajouter un autre boxeur" et 8 nouveaux champs sont présentés (avec les noms de champs mis à jour comme "F4FirstName", "F4LastName" et je ne sais pas comment faire. – JM4

0

Si vous êtes un "programmeur relativement nouveau", le meilleur moyen serait probablement d'avoir un formulaire pour entrer 1 combattant à la fois. Sans oublier que ce serait beaucoup plus convivial.

+0

Cela ne répond pas du tout à la question: un utilisateur à la fois ne dépasse pas ce que j'essaie de faire.Qu'il s'agisse d'un combattant ou de 10 000, le gestionnaire «enrôle» plusieurs combattants à la fois et les paie tous en même temps. Votre suggestion serait similaire à l'achat d'épicerie au magasin et seulement être en mesure d'acheter 1 article à la fois avec ma carte de crédit, donc cela ne fonctionnera pas. – JM4

+0

Votre commentaire en dit plus que votre question actuelle. Vous devriez éditer votre question et l'ajouter. Comme vous pouvez voir les gens sont très confus par votre question, y compris moi. – Galen