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 :

Ajout colonne dans un tableau [PHP 5.4]


Sujet :

Langage PHP

  1. #1
    Membre habitué
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 1 015
    Points : 182
    Points
    182
    Par défaut Ajout colonne dans un tableau
    Bonjour à tous,

    Je me posais la question de savoir si c'est possible sur un site internet de faire un clic et que cela crée une colonne?
    Je vous explique, sur le site où je travaille on propose des formations, ces formations sont dans un tableau les unes en dessous des autres.
    Lorsque je dois rentrer une formation, je vais dans le code php et j'insere une nouvelle ligne.
    Mais je souhaite que mes collègues de travail qui ne connaissent pas php puissent ajouter des formations en ligne.
    Donc j'aimerais savoir si c'est possible et quel langage javascript, php?

    Merci et bonne soirée

  2. #2
    Expert éminent
    Avatar de Watilin
    Homme Profil pro
    En recherche d'emploi
    Inscrit en
    Juin 2010
    Messages
    3 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : En recherche d'emploi

    Informations forums :
    Inscription : Juin 2010
    Messages : 3 094
    Points : 6 755
    Points
    6 755
    Par défaut
    C'est possible en PHP, et également en JavaScript dans la mesure où tu passes par PHP pour sauvegarder les changements.

    J'aimerais que tu précises ce point :
    Lorsque je dois rentrer une formation, je vais dans le code php et j'insere une nouvelle ligne.
    En fait, les formations sont stockées en dur dans le code PHP ? C'est pas terrible ça

    L'idéal ce serait que tu aies une base de données pour stocker les formations, mais tu peux aussi utiliser un fichier plain text. Dans tous les cas ça passera par un formulaire HTML. As-tu une base de données ?

  3. #3
    Membre habitué
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 1 015
    Points : 182
    Points
    182
    Par défaut Ajout colonne dans un tableau
    Oui les informations sont en dures dans le code php pour les formations et oui il y a une base de données phpmyadmin avec les personnes inscritent aux formations à l'interieur.

  4. #4
    Expert éminent
    Avatar de Watilin
    Homme Profil pro
    En recherche d'emploi
    Inscrit en
    Juin 2010
    Messages
    3 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : En recherche d'emploi

    Informations forums :
    Inscription : Juin 2010
    Messages : 3 094
    Points : 6 755
    Points
    6 755
    Par défaut
    Si tu as déjà une base, tu n'as aucune excuse pour ne pas créer une table "formations" Je peux te guider si tu veux. Commence par repérer les champs importants (nom, date, durée, etc.) pour faire les colonnes de la table. Et commence aussi à construire le code HTML du formulaire. Voilà un exemple plutôt simple (avec des labels pour l'ergonomie) :
    Code HTML : 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
    <form method="POST" action="creer-formation.php">
       <p>
          <label>
             Nom :
             <input type="text" name="nom">
          </label>
       </p>
       <p>
          <label>
             Nombre de places :
             <input type="number" name="places">
          </label>
       </p>
       <p>
          <label>
             Date de début :
             <input type="date" name="debut">
          </label>
       </p>
       <p>
          <label>
             Date de fin :
             <input type="date" name="fin">
          </label>
       </p>
       <p>
          <input type="submit">
       </p>
    </form>

    Tu utilises quelle API pour faire tes requêtes SQL ? Perso je te conseille PDO. Regarde ici.

  5. #5
    Membre habitué
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 1 015
    Points : 182
    Points
    182
    Par défaut Ajout colonne dans un tableau
    Oui j'ai déjà une base de données avec les acteurs qui s'inscrivent aux formations et j'ai aussi mon formulaire.
    Et c'est vrai je n'ai aucune excuse pour ne pas créer une table formation, d'ailleurs tu m'a motivé pour le faire là, merci.
    Niveau mcd, je sais plus trop, pour la table formations, si je mets id, intitulé formation, date et num_membre_formations c'est bon?

  6. #6
    Expert éminent
    Avatar de Watilin
    Homme Profil pro
    En recherche d'emploi
    Inscrit en
    Juin 2010
    Messages
    3 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : En recherche d'emploi

    Informations forums :
    Inscription : Juin 2010
    Messages : 3 094
    Points : 6 755
    Points
    6 755
    Par défaut
    Pour ça je ne sais pas, je ne connais pas le projet. C'est à toi de voir. Tu mets quoi quand tu rajoutes les données en dur dans ton fichier PHP ?

  7. #7
    Membre habitué
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 1 015
    Points : 182
    Points
    182
    Par défaut Ajout colonne dans un tableau
    Pour les formations et son contenu c'est bon je vois les champs qu'il faut ajouter mais je sais plus si c'est le champ numéro des acteurs inscrit à la formation qu'il faut ajouter à la table formation où si c'est l'inverse? je sais pas si je suis très clair....
    Où le numéro des formations dans la table "acteur".

  8. #8
    Expert éminent
    Avatar de Watilin
    Homme Profil pro
    En recherche d'emploi
    Inscrit en
    Juin 2010
    Messages
    3 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : En recherche d'emploi

    Informations forums :
    Inscription : Juin 2010
    Messages : 3 094
    Points : 6 755
    Points
    6 755
    Par défaut
    Tu n'as qu'à faire exactement comme si tu rajoutais une ligne dans ton fichier PHP. Est-ce que tu rajoutais les numéros des inscrits ?

  9. #9
    Membre habitué
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 1 015
    Points : 182
    Points
    182
    Par défaut Ajout colonne dans un tableau
    Les numéros des inscrits sont en première ligne de la table acteurs (ils s'auto incrémente) et donc en derniere ligne de la table acteur, il faut rajouter les numéros de formations pour savoir qu'elle acteurs fait qu'elle formations....

  10. #10
    Expert éminent
    Avatar de Watilin
    Homme Profil pro
    En recherche d'emploi
    Inscrit en
    Juin 2010
    Messages
    3 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : En recherche d'emploi

    Informations forums :
    Inscription : Juin 2010
    Messages : 3 094
    Points : 6 755
    Points
    6 755
    Par défaut
    Oui ça peut marcher comme ça. Construis le formulaire HTML en fonction des champs dont tu as besoin, et essaye d'écrire les requetes SQL INSERT qui correspondent. En faisant attention à bien nettoyer les données avant de les insérer, bien entendu.

  11. #11
    Membre habitué
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 1 015
    Points : 182
    Points
    182
    Par défaut Ajout colonne dans un tableau
    Salut,

    Je me posais la question de savoir comment ajouter le numéro de la formation quand les acteurs s'enregistrent???
    Et tu veux dire quoi par nettoyer les données??

  12. #12
    Expert éminent
    Avatar de Watilin
    Homme Profil pro
    En recherche d'emploi
    Inscrit en
    Juin 2010
    Messages
    3 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : En recherche d'emploi

    Informations forums :
    Inscription : Juin 2010
    Messages : 3 094
    Points : 6 755
    Points
    6 755
    Par défaut
    Qu'on soit bien clairs, c'est à toi de faire le MCD. Mais a priori, ta table "formations" a au moins une colonne id et une colonne titre (ou nom ou quelque chose comme ça). Autrement dit :
    • une colonne qui sert en interne à la base de données,
    • et une colonne qui sert aux êtres humains à reconnaître de quelle formation il s'agit.

    Dans l'idéal, les humains ne doivent pas voir les id, pour la simple raison qu'ils n'en ont rien à faire.

    Pour savoir à quels numéros de formation les acteurs s'enregistrent, il faut leur proposer les noms humainement lisibles des formations dans un <select>, et mettre les numéros des formations dans les attributs value des différentes <option>. Par exemple :

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <select name="formations[]" multiple="multiple">
       <option value="12">PHP</option>
       <option value="27">HTML</option>
       <option value="43">JavaScript</option>
    </select>

    Ce <select>, tu le génères en PHP d'après les résultats d'une requête SQL de ce style :
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM `formations`
    Je ne peux pas détailler le code PHP qui fait ça car je ne sais pas quelle API tu as choisi (mysql, mysqli ou PDO).

    Note : le select multiple n'est pas forcément très ergonomique, il faut expliquer aux utilisateurs qu'ils peuvent faire plusieurs choix en maintenant la touche contrôle (ou commande sous Mac). Du coup, si tu préfères tu peux utiliser des checkboxes à la place. Voir ce sujet.




    Nettoyer les données ça veut dire ne pas utiliser directement les variables $_POST['...']. Il faut que tu t'assures au minimum qu'elles correspondent au type attendu (string, int, etc.), et qu'elles ne contiennent rien de dangereux, par exemple des tentatives d'injection SQL ou du code HTML pour des attaques XSS. Tu ne peux pas faire confiance à ce qui vient du client, car moi-même avec une simple console JavaScript, je peux modifier les attributs value du <select> avant de soumettre le formulaire. C'est à la portée de n'importe qui, donc il est vital de vérifier les données.

  13. #13
    Membre habitué
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 1 015
    Points : 182
    Points
    182
    Par défaut Ajout colonne dans un tableau
    ah oui pas de soucis pour le mcd mais c'est juste que je ne veux pas faire d'erreur..
    Pour la liste déroulante et le sql c'est bon j'ai réussi à faire ce que je voulais, merci.
    Et c'est quoi une console javascript?

  14. #14
    Expert éminent
    Avatar de Watilin
    Homme Profil pro
    En recherche d'emploi
    Inscrit en
    Juin 2010
    Messages
    3 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : En recherche d'emploi

    Informations forums :
    Inscription : Juin 2010
    Messages : 3 094
    Points : 6 755
    Points
    6 755
    Par défaut
    C'est un outil intégré à tous les navigateurs modernes. Il permet de faire des tas de choses. Fais F12 sous ton navigateur et tu verras

  15. #15
    Membre habitué
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 1 015
    Points : 182
    Points
    182
    Par défaut Ajout colonne dans un tableau
    Ah oui ça à l'air sympa la console mais que peut on faire avec ça, serait-il possible d'avoir quelques exemples, merci!

  16. #16
    Expert éminent
    Avatar de Watilin
    Homme Profil pro
    En recherche d'emploi
    Inscrit en
    Juin 2010
    Messages
    3 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : En recherche d'emploi

    Informations forums :
    Inscription : Juin 2010
    Messages : 3 094
    Points : 6 755
    Points
    6 755

  17. #17
    Membre habitué
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 1 015
    Points : 182
    Points
    182
    Par défaut Ajout colonne dans un tableau
    Merci pour toutes les information, j'arrête de t'embêter. Je vais lire tous les documents.
    Bonne journée

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [CR XI] Ajout de colonne dans un tableau croisé
    Par imdnjaay dans le forum SAP Crystal Reports
    Réponses: 1
    Dernier message: 11/10/2013, 20h11
  2. [WD 14] Ajout Colonne dans un tableau !
    Par Grammaton54 dans le forum WinDev
    Réponses: 2
    Dernier message: 12/05/2009, 15h56
  3. ajouter des lignes et colonnes dans un tableau
    Par sky88 dans le forum Débuter
    Réponses: 1
    Dernier message: 03/12/2008, 18h04
  4. Ajout de colonne dans un tableau
    Par steeves5 dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 31/03/2008, 14h48
  5. [Visual Web] [SJSC] Ajout de colonne dans un tableau
    Par vincent77320 dans le forum NetBeans
    Réponses: 4
    Dernier message: 12/06/2006, 11h44

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