IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Tableau dynamique


Sujet :

Langage PHP

  1. #1
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 29
    Par défaut Tableau dynamique
    Bonjour tout le monde!

    Etant débutant en PHP/MySQL, je me permet de poser une question. J'ai parcouru rapidement les sujets précédents et je ne crois pas que ce sujet ait déjà été posté.

    Alors voilà, je dois créer une sorte de base de données accessible sur le web qui va permettre le suivi d'une acitivité. Je réalise donc un tableau ou chaque utilisateur peut remplir les champs. Afin que les lignes du tableau se remplissent petit a petit.

    Le problème, c'est que je ne sais pas comment coder une sorte d'invit pour chaque colonne, qui permette aux utilisateurs de les remplir et de les enregistrer.


    Si je n'ai pas été assez clair, dite le moi!

    Merci d'avance.

  2. #2
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Par défaut
    Bonjour

    Ce que tu veux faire c'est un formulaire de remplissage de base, si j'ai bien compris. Il faut donc que tu construises ton formulaire, que tu récupères les données et que tu les insères dans la base.

    Un peu de lecture pour commencer : passer des requêtes MySQL en PHP et les formulaires et PHP5
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  3. #3
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 29
    Par défaut
    Citation Envoyé par Celira Voir le message
    Bonjour

    Ce que tu veux faire c'est un formulaire de remplissage de base, si j'ai bien compris. Il faut donc que tu construises ton formulaire, que tu récupères les données et que tu les insères dans la base.

    Un peu de lecture pour commencer : passer des requêtes MySQL en PHP et les formulaires et PHP5
    Merci Celira,

    C'est déjà un bon début, je n'arrivais pas à placer les mots sur ce que je cherchais à réaliser (formulaire ici), ce qui m'empêchait de me documenter.

    Merci pour tes liens, je me plonge dedans et je reviendrai surement poster si j'ai des questions.


  4. #4
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 29
    Par défaut
    Me revoilà!

    Je n'arrive pas à trouver ma solution.
    Pour être clair, la solution doit être la suivante:


    Pays Région Département Ville


    ...... ....... ......... ........ Valider

    ...... ....... ......... ........ Valider

    etc..


    Les point de suspensions seraient les zones à remplir.

    Merci de votre aide

  5. #5
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Par défaut
    Les zones à remplir sont des input (je suppose de type texte).
    Si tu met un bouton par ligne, ça implique que tu ne peux enregistrer qu'une seule ligne à la fois. ça faciliterait pas mal le développement, mais je doute que ce soit ton objectif.

    Maintenant il va falloir préciser un peu ce que tu as fait et ce qui te bloque, parce que sinon on ne va pas avancer
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  6. #6
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 29
    Par défaut
    Citation Envoyé par Celira Voir le message
    Les zones à remplir sont des input (je suppose de type texte).
    Si tu met un bouton par ligne, ça implique que tu ne peux enregistrer qu'une seule ligne à la fois. ça faciliterait pas mal le développement, mais je doute que ce soit ton objectif.

    Maintenant il va falloir préciser un peu ce que tu as fait et ce qui te bloque, parce que sinon on ne va pas avancer
    Merci pour ta réponse.

    Ce que je souhaite, c'est que l'on ne puisse valider une ligne que lorsque tous les champs sont remplies, d'où le 1 bouton / ligne.

    Le but de mon projet est que plusieurs utilisateurs puissent remplir leur ligne en temps voulu, même si un autre utilisateur est déjà en train de remplir la sienne.

    Pour le moment, voilà ou j'en suis:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    <div id="page_title">
    	Mon projet
    </div>
    </br>
     
     
    <form method="POST" action="test.php" enctype="multipart/form-data">
    	<table border="0" bordercolor="#000000"  cellpadding="0" cellspacing="0">
      <tr bgcolor="#FF6600" >
        <td width="100" align="center" valign="middle" class="Titre_BlancPetit">N° Cas <input type="text" name="text" />
        <td bgcolor="#ffffff" width="1"><img border="0" src="img/1x1transp.gif"></td>
        <td width="140" align="center" valign="middle" class="Titre_BlancPetit">N° Océane<input type="text" name="text" />
        <td bgcolor="#ffffff" width="1"><img border="0" src="img/1x1transp.gif"></td>
    	<td width="100"  align="center" valign="middle" class="Titre_Blanc">Arrivée<input type="text" name="text" />
        <td bgcolor="#ffffff" width="1"><img border="0" src="img/1x1transp.gif"></td>
        <td width="100"  align="center" valign="middle" class="Titre_Blanc">génération<input type="text" name="text" />
        <td bgcolor="#ffffff" width="1"><img border="0" src="img/1x1transp.gif"></td>
        <td width="100" align="center" valign="middle" class="Titre_BlancPetit">Retour<input type="text" name="text" />
        <td bgcolor="#ffffff" width="1"><img border="0" src="img/1x1transp.gif"></td>
        <td width="100"  align="center" valign="middle" class="Titre_BlancPetit">Code Postal<input type="text" name="text" />
        <td bgcolor="#ffffff" width="1"><img border="0" src="img/1x1transp.gif"></td>
        <td width="150" align="center" valign="middle" class="Titre_BlancPetit">Client<input type="text" name="text" />
        <td bgcolor="#ffffff" width="1"><img border="0" src="img/1x1transp.gif"></td>
        <td width="150"  align="center" valign="middle" class="Titre_BlancPetit">Typologie<input type="text" name="text" />
        <td bgcolor="#ffffff" width="1"><img border="0" src="img/1x1transp.gif"></td>
      </tr>
     
     
      <tr <?php if ($nbligne%2==0) { echo "bgcolor='#ffffff'"; } else { echo "bgcolor='#EEEEEE'"; } ?> >
        <td class="Type_3" align="center">&nbsp;<?php echo $affichage_res[NumeroCas]; ?></td>
        <td width="1"><img border="0" src="img/1x1transp.gif"></td>
        <td class="Type_3" align="center"> &nbsp;<?php echo $affichage_res[NumeroOceane]; ?></td>
        <td width="1"><img border="0" src="img/1x1transp.gif"></td>
    	<td class="Type_3" align="center"> &nbsp;<?php echo $affichage_res[Arrivee]; ?></td>
        <td width="1"><img border="0" src="img/1x1transp.gif"></td>
        <td class="Type_2" align="center"><?php echo $affichage_res[Generation]; ?></td>
        <td width="1"><img border="0" src="img/1x1transp.gif"></td>
        <td class="Type_2"> &nbsp;<?php echo $affichage_res[Retour]; ?></td>
        <td width="1"><img border="0" src="img/1x1transp.gif"></td>
        <td class="Type_3" align=center> &nbsp;<?php echo $affichage_res[CodePostal]; ?></td>
        <td width="1"><img border="0" src="img/1x1transp.gif"></td>
        <td class="Type_3"> &nbsp;<?php echo ucwords(strtolower($affichage_res[Client])); ?></td>
        <td width="1"><img border="0" src="img/1x1transp.gif"></td>
    	<td class="Type_3"> &nbsp;<?php echo ucwords(strtolower($affichage_res[Typologie])); ?></td>
        <td width="1"><img border="0" src="img/1x1transp.gif"></td>
     
    <form method="POST" action="test.php" enctype="multipart/form-data">
        N° Cas :
        <input type="text" name="text" /><br />
    	N° Océane :
        <input type="text" name="text" /><br />
    	N° Arrivée :
        <input type="text" name="text" /><br />
    	generation :
        <select name="select">
            <option value="Option 1">1</option>
            <option value="Option 2">2</option>
        </select><br />
    	Retour :
        <input type="text" name="text" /><br />
    	Code Postal :
        <input type="text" name="text" /><br />
    	Client :
        <input type="text" name="text" /><br />
    	Typologie :
        <input type="text" name="text" /><br />
     
        Bouton d'envoi :
        <input type="submit" href="visualisation.php" value="Envoyer" /><br />
     
        Bouton de réinitialisation :
        <input type="reset" value="Rétablir" />
    </form>

  7. #7
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 29
    Par défaut
    Personne n'a d'idée??

  8. #8
    Modérateur
    Avatar de Vil'Coyote
    Homme Profil pro
    Développeur adélia & Web
    Inscrit en
    Février 2008
    Messages
    4 583
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur adélia & Web
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2008
    Messages : 4 583
    Par défaut
    salut,
    non pas d'idées, juste une question je vois pas le rapport entre ton code et le petit "schéma" précédent.

    la dans le code, tu as un tableau (non fini) dans un formulaire (non fini également) et à la suite une suite de champs de saisie dans un second formulaire.

    donc je pense qu'il faudrait déjà réfléchir à ce que tu souhaites réellement faire?

    si c'est un tableau dont chaque ligne peut être valider séparément, dans ce cas il te faudrait alors autant de formulaire que de ligne et jouer avec des input=hidden et du javascript voir une fois que tout fonctionne pourquoi pas de l'ajax

    si c'est un tableau dont on valide toutes les ligne en un coup, dans ce cas tu devrais revoir la façon d'afficher les données et dont tu utilises ton formulaire ainsi que le nombre de ligne à afficher.
    la vie n'est pas cirrhose des foies ...

    Avant de poster un message Rechercher n'est pas qu'une option.
    FAQ Web - Tuto Web

  9. #9
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 29
    Par défaut
    Salut!
    Tout d'abord, merci pour l'interet que tu portes à mon problème;

    En fait, je me suis mal exprimé. Je souhaite assuré un suivi. Pour cela, je dois récupérer les valeurs entré dans le formulaire, les insérer en base et récupérer ces données de la BDD pour les placer dans un tableau.

    Voilà ce que je souhaite faire.

    La seconde partie, à savoir le passage des données de la BDD vers le tableau, est réalisable pour mes compétences.
    En revanche, je ne sais pas comment récupérer les données du formulaire.

    Voilà

  10. #10
    Modérateur
    Avatar de Vil'Coyote
    Homme Profil pro
    Développeur adélia & Web
    Inscrit en
    Février 2008
    Messages
    4 583
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur adélia & Web
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2008
    Messages : 4 583
    Par défaut
    pour récupérer les données du formulaire il faudrait que tu nous montre le code de ton formulaire et si c'est le code que tu as indiqué précédemment, alors y beaucoup de boulot à refaire d'où mon précédent post.
    la vie n'est pas cirrhose des foies ...

    Avant de poster un message Rechercher n'est pas qu'une option.
    FAQ Web - Tuto Web

  11. #11
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 29
    Par défaut
    Voici le code de mon formulaire:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    <form method="POST" action="test.php" enctype="multipart/form-data">
        N° Cas :
        <input type="text" name="text" /><br />
    	N° Océane :
        <input type="text" name="text" /><br />
    	N° Arrivée :
        <input type="text" name="text" /><br />
    	generation :
        <select name="select">
            <option value="Option 1">1</option>
            <option value="Option 2">2</option>
        </select><br />
    	Retour :
        <input type="text" name="text" /><br />
    	Code Postal :
        <input type="text" name="text" /><br />
    	Client :
        <input type="text" name="text" /><br />
    	Typologie :
        <input type="text" name="text" /><br />
     
        Bouton d'envoi :
        <input type="submit" href="visualisation.php" value="Envoyer" /><br />
    </form>

  12. #12
    Modérateur
    Avatar de Vil'Coyote
    Homme Profil pro
    Développeur adélia & Web
    Inscrit en
    Février 2008
    Messages
    4 583
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur adélia & Web
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2008
    Messages : 4 583
    Par défaut
    Ok,
    donc, dans ton forumlaire les champs text, il falloir leur attribuer un nom spécifique à chacun
    name="Cas" , name="Oceane" .....
    et dans ton fichier test.php tu dois pouvoir récupérer la valeur de ces champs via un $_POST["Cas"], $_POST["Oceane"] etc ... en effectuant tout de même des contrôle de sécurité bien entendu.
    la vie n'est pas cirrhose des foies ...

    Avant de poster un message Rechercher n'est pas qu'une option.
    FAQ Web - Tuto Web

  13. #13
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 29
    Par défaut
    OK j'ai comprit ton raisonnement.
    Ça pourrais donner quelque chose comme ca alors?

    PHP

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    <form method="POST" action="test2.php" enctype="multipart/form-data">
        N° Cas :
        <input type=text size="8" maxlength="8" name="cas" /><br />
    	N° Océane :
        <input type=text size="9" maxlength="9" name="oceane" /><br />
    	N° Arrivée :
        <input type=text name="arrivee" /><br />
    	2G / 3G :
        <select name="generation">
            <option value="Option 1">2G</option>
            <option value="Option 2">3G</option>
        </select><br />
    	Retour :
        <input type=text name="retour" /><br />
    	Code Postal :
        <input type=text name="codepostal" /><br />
    	Centre Client :
        <input type=text name="centreclient" /><br />
    	Typologie :
        <input type=text name="typologie" /><br />
     
        Bouton d'envoi :
        <input type=submit value="Envoyer" /><br />
     
        Afficher
        <input type=hidden name="afficher" value=ok />
    </form>

    HTML

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    <HTML>
    <HEAD>
    <TITLE>Test2.php: Affichage des données utilisateur</TITLE>
    </HEAD>
    <BODY>
     
    <?php
    if ($_POST['afficher']=="ok") {
    	if (($cas=="")||($oceane=="")||($arrivee=="")||($generation=="")||($retour=="")||($codepostal=="")||($centreclient=="")||($typologie=="")){
    		if($cas=="") print("Veuillez saisir le numéro de cas<BR>\n");
    		if($oceane=="") print("Veuillez saisir le numéro du ticket Oceane<BR>\n");
    		if($arrivee=="") print("Veuillez saisir la date d'arrivee<BR>\n");
    		if($generation=="") print("Veuillez saisir la technologie (2G/3G)<BR>\n");
    		if($retour=="") print("Veuillez saisir la date de retour<BR>\n");
    		if($codepostal=="") print("Veuillez saisir le code postal<BR>\n");
    		if($centreclient=="") print("Veuillez saisir l'age de l'utilisateur<BR>\n");
    		if($typologie=="") print("Veuillez saisir le type de plainte rencontree<BR>\n");
     
    	}
    	else {
    	echo "Récapitulatif des informations saisies<BR>\n
    	<UL>
    	<LI>Nom: $cas</LI>
    	<LI>Prenom: $oceane</LI>
    	<LI>Age: $arrivee</LI>
    	<LI>Age: $generation</LI>
    	<LI>Age: $retour</LI>
    	<LI>Age: $codepostal</LI>
    	<LI>Age: $centreclient</LI>
    	<LI>Age: $typologie</LI>
    	</UL>
    	";
     
    	}
    }
    else {
    	echo "<p>Vous n'avez pas demandé que les informations soient affichées.<p>"
    }
     
    ?>

  14. #14
    Modérateur
    Avatar de Vil'Coyote
    Homme Profil pro
    Développeur adélia & Web
    Inscrit en
    Février 2008
    Messages
    4 583
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur adélia & Web
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2008
    Messages : 4 583
    Par défaut
    salut,
    en survolant à la va vite oui cela pourrais y ressembler. tu peux utiliser un if( !isset($_POST["mavar1"]) || !isset($_POST["mavar2"]) ..... en lieu et place des == ''
    ces test peuvent d'ailleurs être fait en javascript à la validation de ton formulaire.
    la vie n'est pas cirrhose des foies ...

    Avant de poster un message Rechercher n'est pas qu'une option.
    FAQ Web - Tuto Web

  15. #15
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 29
    Par défaut
    Et pour récupérer ces valeurs et les mettre dans la base?

  16. #16
    Modérateur
    Avatar de Vil'Coyote
    Homme Profil pro
    Développeur adélia & Web
    Inscrit en
    Février 2008
    Messages
    4 583
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur adélia & Web
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2008
    Messages : 4 583
    Par défaut
    Citation Envoyé par scofield69 Voir le message
    Et pour récupérer ces valeurs et les mettre dans la base?
    les tutos et la FAQ sont là pour ça >> ici <<
    la vie n'est pas cirrhose des foies ...

    Avant de poster un message Rechercher n'est pas qu'une option.
    FAQ Web - Tuto Web

Discussions similaires

  1. Réponses: 4
    Dernier message: 19/03/2015, 18h31
  2. récupérer la memoire et tableau dynamique
    Par Guigui_ dans le forum Langage
    Réponses: 6
    Dernier message: 06/01/2003, 08h02
  3. AFFICHER UN TABLEAU DYNAMIQUE
    Par ghassenus dans le forum Langage
    Réponses: 2
    Dernier message: 28/12/2002, 14h19
  4. [Kylix] tableau dynamique
    Par sdoura2 dans le forum EDI
    Réponses: 1
    Dernier message: 31/10/2002, 08h57
  5. Réponses: 4
    Dernier message: 13/05/2002, 16h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo