Problème créer un tableau avec des valeurs récupérer par post puis rajouter la m
cds0671
Messages postés18Date d'inscriptionvendredi 17 février 2006StatutMembreDernière intervention17 novembre 2009
-
16 nov. 2009 à 09:34
cds0671
Messages postés18Date d'inscriptionvendredi 17 février 2006StatutMembreDernière intervention17 novembre 2009
-
17 nov. 2009 à 15:52
Bonjour voici mon problème!!
J'ai un formulaire à accès libre sans session, ou on rentre NOM, PRENOM, FONCTION, LIEU.
Jusque là pas de souci.
Là ou je bloque, c'est que je voudrais envoyer sur la base les données que lorsque l'utilisateur a terminé de saisir l'ensemble des personnes à inscrire.
Principe, il complète les champs -> clique sur "ajouter" -> les données POST sont récupérer sur la même page et stockées (1ère solution)dans un tableau PERSONNE(0), les données ajouter sont réaffichées et en dessous se rajoute le même formulaire que précédemment pour pouvoir rentre une autre personne qui une fois cliquer sur "ajouter" est stockée dans un autre tableau PERSONNE(1) etc...
Ou alors première personne stockée (2eme solution) dans un tableau PERSONNE, puis 2eme pousser dans le même tableau sans supprimer la première, pousser 3eme etc...
Lorsque l'utilisateur a terminé ses saisies, il clique sur le bouton submit et à ce moment là je désire balancer dans ma base l'ensemble des tableaux PERSONNE(n) ou alors le tableau PERSONNE (si 2eme solution retenue).
PERSONNE0 :
NOM
PRENOM
FONCTION
LIEU
PERSONNE1 :
NOM
PRENOM
FONCTION
LIEU
etc...
MERCI POUR VOTRE AIDE C'EST SUPER URGENT j'AI PASSE LE WEEK DESSUS ET TOUJOURS PAS TROUVER PAS LOIN MAIS j'ai tenté utiliser array_push mais sa mécrase celui d'avant !!!!
csd0671
A voir également:
Problème créer un tableau avec des valeurs récupérer par post puis rajouter la m
cds0671
Messages postés18Date d'inscriptionvendredi 17 février 2006StatutMembreDernière intervention17 novembre 2009 16 nov. 2009 à 11:17
Voici le bout de code du formulaire
Renseignez tous les champs du formulaire, puis cliquez sur
le bouton Ajouter pour ajouter la personne.
Une fois l'ensemble des personnels inscrit, cliquez sur "Envoyer ma demande" pour valider votre demande.
<!-- Formulaire permettant la saisie de la personne concerné---
----- Une fois complété, l'utilisateur clique sur le bouton "VALIDER" la personne ---
----- est alors ajoutée à un tableau permettant une fois toutes les personnes saisies ---
----- leurs enregistrement dans la table "INSCRITS" -->
Maintenant ce que je n'arrive pas à réaliser, c'est récupérer les 4 valeurs POST(NOM, PRENOM, FONCTION, LIEU) et remplir un tableau PERSONNE par exemple avec ces valeurs, puis lorsque l'utilisateur rempli à nouveau cette ligne je récupère les nouvelles valeurs et les pousse dans le tableau ainsi de suite et quand il a fini, alors à ce moment là je balance tout sur ma base.
Le principe c'est comme faire un panier mais sans variable de session étant donné que ce formulaire est libre d'accès!
Donc récupérer les POST etc... ça pas de souci je sais faire, c'est les pousser dans un tableau que je complète au fur et à mesure.
Je désire réafficher les lignes du tableau déjà reçu, réaffiché en dessous mon formulaire et ainsi de suite jusqu'à ce qu'il ai terminé
à ce moment là un autre bouton apparait "envoyer ma demande" et là j'envoi sur la base mon tableau.
J'espère avoir été plus claire!!
1. Tu te fais un tableau d'utilisateurs dans une variable de session ;
2. Quand tu clique sur ajouter, tu assemble tes informations sur l'utilisateur dans un tableau utilisateur ensuite tu injecte avec array_push ce tableau dans ton tableau d'utilisateurs ;
3. Quand l'utilisateur clique sur Fini, ton script à juste à récupérer la session contenant tous les tableaux d'utilisateur et à faire un foreachdessus. Dans chaque passage de ta boucle tu insert l'utilisateur en base de donnée ;
4. Tu vide ta variable de session.
cds0671
Messages postés18Date d'inscriptionvendredi 17 février 2006StatutMembreDernière intervention17 novembre 2009 16 nov. 2009 à 16:14
Merci Tonio_35
Pourrais tu si tu en as le temps bien entendu, me faire un exemple car vois tu lorsque je le fais mon array_push mécrase les valeurs précédentes je n'ai donc toujours qu'une ligne dansmon tableau ? comprend pas
kohntark
Messages postés3705Date d'inscriptionlundi 5 juillet 2004StatutMembreDernière intervention27 avril 201230 16 nov. 2009 à 20:08
Afin que ce soit plus clair pour tout le monde, pense à indenter ton code et à utiliser la balise code () pour la coloration syntaxique.
Ca facilite grandement la lecture, même pour de tout petits codes. Tu aurais peut être vu que tu as écris $_SESSIONS
Par ailleurs pense à activer les erreurs pour voir immédiatement ce genre de pb (error_reporting())
cds0671
Messages postés18Date d'inscriptionvendredi 17 février 2006StatutMembreDernière intervention17 novembre 2009 16 nov. 2009 à 21:26
Voici une partie de mon code, pour ce qui concerne ce S dans mon script il n'y était pas. En effet, je tapais juste quelques lignes car mon fichier était vraiment bordélic vu ts les tests que je fesais loll
Ici c'est du GET juste pour les test.
(error_reporting ? sous Drem ça se trouve ou ?
Voici un bout de mon code nettoyé un peu mai qui ne marche toujours pas ???
kohntark
Messages postés3705Date d'inscriptionlundi 5 juillet 2004StatutMembreDernière intervention27 avril 201230 16 nov. 2009 à 21:50
error_reporting ? sous Drem ça se trouve ou ?
Je ne sais pas, je ne connais pas Dreamweaver mais il suffit de l'ajouter directement dans le code.
T'es tu renseigné sur cette fonction ?
Il est indispensable que tu affiches ces erreurs.
Tu as des variables non définies ($PROJET), $PHP_SELF n'existe probablement pas, $insc également (mais $_POST['insc'] sans doute). L'affichage des erreurs te permettrait de les voir immédiatement.
Une fois cela corrigé ton code devrait fonctionner
cds0671
Messages postés18Date d'inscriptionvendredi 17 février 2006StatutMembreDernière intervention17 novembre 2009 16 nov. 2009 à 22:24
Non je ne connaissais pas cette fonction mais vite allez la voir loll
effectivement avais pas fait attention insc j'avais supprimé la ligne ou je le définissé
par contre la il n'y avai qu'un bout du code $projet il est défini dans une autre page ou celle ci va venir s'insérer c'est juste une page de test vite faite hihi
Crois tu qu'il serait possible de faire ça sans variable de session ??
car je cherchais a le faire sans juste pour m'entrainer sur les tableaux de tableaux et les boucles pour les balayer et là j'y arrive pas j'en suis pas loin mais lorsque je push mon deuxième GET j'arrive pas ... du moins tout ça je l'avais mis dans mon premier post.
Si t'avais une explication comment faire la solution sans variable de session se serait super car me permettrait de mieux assimiler le fonctionnement d'un tableau de tableau et comment le remplir et le balayer.
kohntark
Messages postés3705Date d'inscriptionlundi 5 juillet 2004StatutMembreDernière intervention27 avril 201230 17 nov. 2009 à 08:50
Crois tu qu'il serait possible de faire ça sans variable de session ??
Je ne crois pas, j'en suis sur, bien qu'il soit toujours possible de bricoler autre chose, via un cookie, un fichier texte, une table temporaire, etc ... mais là ça devient du n'importe quoi.
Je ne suis pas sur que ce soit superflu de rappeler que toutes les variables d'un script sont détruites lorsque celui ci se termine.
Lorsque tu dis que array_push écrase la dernière entrée c'est inexacte. La véritable raison est celle évoquée ci dessus.
Non je ne connaissais pas cette fonction mais vite allez la voir loll
Juste au passage et sans méchanceté :
Lorsque l'on te propose un truc la moindre des choses et d'en tenir compte. Une minuscule recherche t'aurait permis de déboguer en un clin d'oeil ton script.
error_reporting()
cds0671
Messages postés18Date d'inscriptionvendredi 17 février 2006StatutMembreDernière intervention17 novembre 2009 17 nov. 2009 à 15:52
J'ai été voir pour error_reporting().
Là il est vrai que j'ai vite recopier une partie de mon script et du coup j'ai introduit quelques bêtises mais qui n'étaient pas présentes dans le script que je test.
En tout cas ça fonctionne la boulette venai juste du fait que j'avais pas def la variable insc, quelle tête en l'air hihi.
En tt cas merci d'avoir pris le temps de me répondre c cool merci.