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 :

[Tableaux] Modifier un tableau sur une page en PHP [Fait]


Sujet :

Langage PHP

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    382
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Mai 2006
    Messages : 382
    Points : 151
    Points
    151
    Par défaut [Tableaux] Modifier un tableau sur une page en PHP
    bonjour a tous,

    je voudrais savoir comment je peux faire pour modifier un tableau directement sur la page en php??? c'est-à-dire modifier le tableau pour qu'il s'actualise directement.

    je suis debutant et je ne sais pas par où commencer pour réaliser cette application

    merci d'avance

    salutations.

  2. #2
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 435
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 435
    Points : 15 809
    Points
    15 809
    Par défaut
    Tu peux utiliser AJAX pour faire ça.
    Tu trouvera plus d'informations là :
    http://php.developpez.com/cours/#bibliotheques-ajax

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    382
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Mai 2006
    Messages : 382
    Points : 151
    Points
    151
    Par défaut
    est ce qu'on faire cette manipulation sans l'aide d'AJAX, est ce qu'on peut tout faire en php avec l'aide d'un bouton actualiser qui stocke les donnees modifiees et qui les remplace dans le tableau??????

    je galere dejà avec le php alors si je me met à l'AJAX, je ne vais plus m'en sortir

    merci

    ciao

  4. #4
    Membre éprouvé

    Inscrit en
    Janvier 2006
    Messages
    969
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 969
    Points : 958
    Points
    958
    Par défaut
    Si ton tableau est rempli par une requête, c'est tout à fait possible de faire un petit bouton "reload" pour recharger la page.
    Il "suffit" de faire un tableau dont chaque case est un formulaire et un <input type=text>, et en cliquant sur recharger, de sauvegarder les contenus et de recharger la page.

  5. #5
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 435
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 435
    Points : 15 809
    Points
    15 809
    Par défaut
    oui on peut le faire sans AJAX et donc sans Javascript mais dans ce cas ta page se rechargera.
    Ce que tu veux en fait, c'est un simple formulaire avec une zone de texte et quand on clique sur le bouton d'enregistrement, la page se recharge avec la nouvelle valeur

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    382
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Mai 2006
    Messages : 382
    Points : 151
    Points
    151
    Par défaut
    oué tu as bien faite de mettre des "" à "suffit" car ça va être chaud à faire mais bon je vais essayer

    merci

    ciao

  7. #7
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    382
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Mai 2006
    Messages : 382
    Points : 151
    Points
    151
    Par défaut
    bon voila j'ai commencé mon tableau et je veux juste te demander si je suis bien parti :

    par contre si je met des <input...> et dois mettre un <form>, mais je ne sais pas vers quelle page je dois diriger ma modification puisque tout doit se faire sur la meme page.

    voici le début de mon tableau :

    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
    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
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    <body>
    <form method="get" action="">
    <table border="1" width="100%" height="378" bdcolor="#FF0000">
      <tr>
        <td width="100%" colspan="6" height="28">
          <p align="center"><b><i><u><font color="#FF0000" size="5">Mois en cours</font></u></i></b></td>
      </tr>
      <tr>
        <td width="16%" height="19">
          <p align="center"><font color="#FF0000"><b>DECEMBRE</b></font></td>
        <td width="16%" align="center" height="19"><b>Réalisé</b></td>
        <td width="17%" align="center" height="19"><b>Objectif</b></td>
        <td width="17%" align="center" height="19"><b>Réalisation/Objectif</b></td>
        <td width="17%" align="center" height="19"><b>Réalisé en 2005</b></td>
        <td width="17%" align="center" height="19"><b>Réalisation/2005</b></td>
      </tr>
      <tr>
        <td width="16%" align="center" height="19"><b>SD France</b></td>
        <td width="16%" height="19"><input type="text" name="chiffre1" value="603 867 €"></td>
        <td width="17%" height="19"><input type="text" name="chiffre2" value="838 866 €"></td>
        <td width="17%" height="19"><input type="text" name="chiffre3" value="72.0 %"></td>
        <td width="17%" height="19"><input type="text" name="chiffre4" value="780 531 €"></td>
        <td width="17%" height="19"><input type="text" name="chiffre5" value="74.4 %"></td>
      </tr>
      <tr>
        <td width="16%" align="center" height="19"><b>SD av instances</b></td>
        <td width="16%" height="19"></td>
        <td width="17%" height="19"></td>
        <td width="17%" height="19"></td>
        <td width="17%" height="19"></td>
        <td width="17%" height="19"></td>
      </tr>
      <tr>
        <td width="16%" align="center" height="19"><b>Export SD</b></td>
        <td width="16%" height="19"></td>
        <td width="17%" height="19"></td>
        <td width="17%" height="19"></td>
        <td width="17%" height="19"></td>
        <td width="17%" height="19"></td>
      </tr>
      <tr>
        <td width="16%" align="center" height="19"><b>Export av instances</b></td>
        <td width="16%" height="19"></td>
        <td width="17%" height="19"></td>
        <td width="17%" height="19"></td>
        <td width="17%" height="19"></td>
        <td width="17%" height="19"></td>
      </tr>
      <tr>
        <td width="16%" align="center" height="19"><b>MDD-ST</b></td>
        <td width="16%" height="19"></td>
        <td width="17%" height="19"></td>
        <td width="17%" height="19"></td>
        <td width="17%" height="19"></td>
        <td width="17%" height="19"></td>
      </tr>
      <tr>
        <td width="16%" align="center" height="38"><b>Total SD av instances</b></td>
        <td width="16%" height="38"></td>
        <td width="17%" height="38"></td>
        <td width="17%" height="38"></td>
        <td width="17%" height="38"></td>
        <td width="17%" height="38"></td>
      </tr>
      <tr>
        <td width="16%" align="center" height="19"><b>VS France</b></td>
        <td width="16%" height="19"></td>
        <td width="17%" height="19"></td>
        <td width="17%" height="19"></td>
        <td width="17%" height="19"></td>
        <td width="17%" height="19"></td>
      </tr>
      <tr>
        <td width="16%" align="center" height="19"><b>VS av instances</b></td>
        <td width="16%" height="19"></td>
        <td width="17%" height="19"></td>
        <td width="17%" height="19"></td>
        <td width="17%" height="19"></td>
        <td width="17%" height="19"></td>
      </tr>
      <tr>
        <td width="16%" align="center" height="19"><b>Export VS</b></td>
        <td width="16%" height="19"></td>
        <td width="17%" height="19"></td>
        <td width="17%" height="19"></td>
        <td width="17%" height="19"></td>
        <td width="17%" height="19"></td>
      </tr>
      <tr>
        <td width="16%" align="center" height="19"><b>Export av instances</b></td>
        <td width="16%" height="19"></td>
        <td width="17%" height="19"></td>
        <td width="17%" height="19"></td>
        <td width="17%" height="19"></td>
        <td width="17%" height="19"></td>
      </tr>
      <tr>
        <td width="16%" align="center" height="19"><b>Total vs av instances</b></td>
        <td width="16%" height="19"></td>
        <td width="17%" height="19"></td>
        <td width="17%" height="19"></td>
        <td width="17%" height="19"></td>
        <td width="17%" height="19"></td>
      </tr>
      <tr>
        <td width="16%" align="center" height="19"><b>Total général</b></td>
        <td width="16%" height="19"></td>
        <td width="17%" height="19"></td>
        <td width="17%" height="19"></td>
        <td width="17%" height="19"></td>
        <td width="17%" height="19"></td>
      </tr>
    </table>
    </form>
     
    </body>

  8. #8
    Membre éprouvé

    Inscrit en
    Janvier 2006
    Messages
    969
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 969
    Points : 958
    Points
    958
    Par défaut
    Le tableau est pas mal, mais une question : est-il figé ou dynamique ? Autrement dit, contient-il toujours le même nombre de lignes et de colonnes, ou est-ce que ça change ? Dans ce dernier cas, il faudra mettre des noms dynamiques à tes inputs.
    Je te conseille de mettre ton formulaire en POST, car si tu changes trop de choses à la fois, je ne sais pas comment ça va être géré par le serveur.
    Pour la redirection, un conseil :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mapage.php?action=miseajour
    et dans la page contenant ton tableau :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    if(isset($_POST['action']) && $_POST['action'] == "miseajour")
    {
    //on modifie la page avec des requêtes UPDATE puis on la réaffiche avec un exit(header("Location:mapage.php"))
    //Tu fais une boucle qui appelle le contenu de chaque formulaire et tu fais un UPDATE correspondant dans ta base de données, ou mieux un DELETE + INSERT sur cette base (ça empêchera de gérer l'existence de la case dans ta base avant car on ne peut pas updater un enregistrement qui n'existe pas)
    }
    else
    {
    //on affiche la page
    }

  9. #9
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    382
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Mai 2006
    Messages : 382
    Points : 151
    Points
    151
    Par défaut
    le nombre de ligne et de colonnes ne changeront plus, c'est figé

    ok je vais mettre mon formulaire en POST.Merci

    quand tu marque :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mapage.php?action=miseajour
    , c'est pour le formulaire et plus particulierement dans
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <form method="post" action="index.php?action=miseajour">
    si ce n'est pas ce que tu voulais dire, est ce que tu peux m'expliquer

    merci d'avance

    ciao

  10. #10
    Membre éprouvé

    Inscrit en
    Janvier 2006
    Messages
    969
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 969
    Points : 958
    Points
    958
    Par défaut
    Oui, c'est exactement ça. Tu passes un argument à ta page pour lui faire comprendre que tu veux faire une action précise.

  11. #11
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    382
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Mai 2006
    Messages : 382
    Points : 151
    Points
    151
    Par défaut
    ok merci pour tout

    mais j'ai encore une question :

    pour que j'actualise, il faut que je fasse un bouton, j'ai essayé ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="reload" name="miseajour" value="Mise a jour du tableau">
    mais au lieu de me creer un bouton, il m'affiche un champ texte avec écrit Mise a jour du tableau

    peux tu me dire s'il existe un type qui permet de faire une mise a jour ou alors je dois mettre quand meme type="submit".

    encore merci

    ciao

  12. #12
    Membre éprouvé

    Inscrit en
    Janvier 2006
    Messages
    969
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 969
    Points : 958
    Points
    958
    Par défaut
    Non, il faut faire un type=submit pour le bouton de mise à jour.
    Pour ton tableau, selon que tu as une seule ou plusieurs lignes, tu peux utiliser un input type=text ou un <textarea>.

  13. #13
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    382
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Mai 2006
    Messages : 382
    Points : 151
    Points
    151
    Par défaut
    ok

    merci pr tt

    ciao
    @+

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

Discussions similaires

  1. tableau sur une page en paysage
    Par jefkiller dans le forum Tableaux - Graphiques - Images - Flottants
    Réponses: 5
    Dernier message: 27/04/2011, 16h07
  2. Centrer un grand tableau sur une page
    Par pantouane dans le forum Mise en forme
    Réponses: 3
    Dernier message: 28/08/2010, 23h33
  3. Réponses: 7
    Dernier message: 26/04/2007, 13h04
  4. Réponses: 2
    Dernier message: 17/02/2007, 13h34
  5. [Tableaux] récupérer un tableau sur une autre page
    Par samsso2005 dans le forum Langage
    Réponses: 3
    Dernier message: 27/01/2006, 23h58

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