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

PHP & Base de données Discussion :

Effectuer un UPDATE MySQL avec un copier/coller d'Excel


Sujet :

PHP & Base de données

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2010
    Messages : 8
    Points : 5
    Points
    5
    Par défaut Effectuer un UPDATE MySQL avec un copier/coller d'Excel
    Bonjour,
    Ma question : Comment réaliser un formulaire permettant de modifier une série de données (des notes en effectuant une requête UPDATE MySQL) à partir d’un copier coller d’un fichier Excel.

    Si l’opération de mise à jour est facile en employant un fichier CSV, cette nouvelle méthode me pose un sérieux problème. En fait, les formateurs ne sont pas des informaticiens et les différentes manipulations avec PHPMyAdmin ne sont pas faciles pour un non initié. De plus, ils risquent de faire des bêtises et de supprimer une table ou pire de supprimer la base de données.

    Je souhaite donc réaliser une suite de pages en PHP permettant de mettre à jour ou de saisir les notes d’une matière d’une classe pour un professeur.
    Le formulaire final doit pouvoir montrer le nom et prénom de l’élève ainsi que la note initiale (si il y a lieu) et ensuite une case formulaire qui peut recevoir par un copier/coller.

    Nom : Prénom : Note : Nouvelle note :
    Bon Jean 12,50 le formulaire (permettant de recevoir un copier/coller)
    Jaune Marie 15,20 le formulaire (permettant de recevoir un copier/coller)

    Il y a deux tables :
    Table 1 : utilisateur (id_util, nom_util, prenom_util)
    Table 2 : notes (id_eleve, note_mat, matiere)
    Jonction entre les 2 tables avec id_util et id_eleve.

    Cette opération est très facile à réaliser pour un étudiant. Il vrai que c'est grâce à l'aide de CinéPhil. Mais sur plusieurs lignes et avec un simple copier/coller c’est une autre histoire.

    Dans la boucle While, je pense qu’il faut placer le formulaire avec les echos. Mais je n’ai aucune idée comment récupérer le contenu des différentes cases du formulaire , attribuer la note à l’étudiant et encore moins l’exploiter pour effectuer l’UPDATE en MySQL.

  2. #2
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2010
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    J'avance un peu. En fait, il faut juste créer un seul formulaire zone de texte. On peut alors coller le contenu d'une plage de cellules (une colonne d'Excel par exemple). Le nombre de lignes est respecté.
    Je voudrais maintenant savoir comment lire, ligne par ligne, le contenu du formulaire de cette zone de texte pour en faire des variables.

  3. #3
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Tu peux utiliser PHPExcel pour lire directement un fichier Excel fourni par un utilisateur.

    Par contre sur le fond c'est un peu étrange d'avoir d'un côté une information mise à jour dans un fichier et la même information à mettre à jour dans une interface web.

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2010
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    Bonjour,

    Pour moi mettre à jour une base de données via CSV ne me pose pas de problème. Mais pour une personne qui a juste les connaissances en bureautique c’est une autre histoire. Elle pourrait le faire avec un copier/coller. C’est justement ce que j’essaie de faire pour elle.

    J’ai trouvé les commandes qui permettent de récupérer le $-POST du formulaire textaera et de le fractionner en ligne avec la commande explode. J’utilise comme séparateur le retour chariot (\r\n).

    En comptant le nombre de ligne du POST je peux faire une boucle (while) pour attribuer une valeur à chaque ligne qui correspond exactement au copier/coller d’une colonne excel. Donc une ligne = une note (exemple $ligne[1]=12). Il me suffit maintenant de faire le lien avec la base de données pour effectuer l’update.

    J’avance lentement…

    Pour PHPExcel, j’ai vu… mais je n’ai pas vraiment compris comment il fonctionne et ce qu’il peut faire. Les exemples sur le net ne sont pas concrets pour moi et il manque des copies d’écran. Les lignes de codes c’est bien… des exemples c’est mieux. Je ne suis pas programmeur. Un lien peut être ?

    Merci de ton aide.

  5. #5
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    PHPExcel permet de lire un fichier excel.
    Tu sais PHP c'est entièrement du code, il n'y a rien à voir à part du code ; donc des copies d'écrans tu n'en verras pas beaucoup.

    Ce que je te disais c'est pourquoi remplir un fichier excel pour ensuite faire des copier/coller vers une page web.
    Autant saisir directement dans un formulaire web/

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2010
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    Bonjour,
    La remarque de Sabotage est vrai. Nous avons besoin d'un fichier Excel uniquement pour faire la jonction entre 2 applications : une application Intranet et une application ouverte sur le web (une complète l'autre mais pas forcement compatible). N'ayant pas finalisé les formulaires de saisie sur la seconde, nous utilisons pour l’instant des fichiers Excel pour alimenter les bases (en CSV) afin de pouvoir faire des essais. Ces fichiers Excel seront ensuite inutiles.

    Pour PHPexcel, il manque des exemples pour les utilisateurs en action ... voir uniquement d'un point de vue programmation ne montre pas le potentiel de cette application. Je vais la regarder ultérieurement et faire une installation avec les extensions demandées sur un serveur linux. Je pense que c'est une application à découvrir.

  7. #7
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    C'est vrai qu'il n'y a que 42 exemples fournis avec PHPExcel
    https://github.com/PHPOffice/PHPExce...velop/Examples

    Egalement ici en français, l'article de maitre Pylos
    http://g-ernaelsten.developpez.com/tutoriels/excel2007/

  8. #8
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2010
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    Merci pour les liens PHPexcel.
    Je viens juste de finir la vérification du POST du formulaire avec les expressions régulières. J'attaque demain la dernière étape de l'update des tables. Si cela fonctionne, je ferais un retour avec les scripts.

Discussions similaires

  1. Codez-vous plutôt avec votre mémoire ou avec le copier-coller ?
    Par dev14 dans le forum Débats sur le développement - Le Best Of
    Réponses: 103
    Dernier message: 05/08/2022, 03h28
  2. [XL-2003] Macro Copier/Coller données Excel vers document Word avec Signets
    Par Julien91080 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 22/05/2013, 12h28
  3. Update MySQL avec UTF8
    Par laetisam dans le forum JDBC
    Réponses: 0
    Dernier message: 09/01/2012, 16h51
  4. Réponses: 1
    Dernier message: 04/02/2011, 09h18
  5. Garder format et mise en page avec un copier-coller
    Par fribelle dans le forum Macros et VBA Excel
    Réponses: 21
    Dernier message: 10/11/2008, 14h01

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