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 :

lancer l'ouverture d'un fichier Excel à partir d'un script php [PHP 5.4]


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2014
    Messages : 72
    Points : 54
    Points
    54
    Par défaut lancer l'ouverture d'un fichier Excel à partir d'un script php
    Bonjour à tous

    je souhaite savoir s'il y a un moyen de lancer l'ouverture d'une fichier excel à partir d'un script php.

    exemple :
    j'ai une page vierge en php, oû j'affiche un lien, je voudrais que quand je clique sur ce lien bein ça m'ouvre le fichier excel

    PS: le fichier excel doit être spécifié.


    j'ai fouillé sur le net et je trouve shell_exec, exec, passthur mais rien qui marche chez moi !


    quand j'ouvre le cmd je tape : start "nom_fenetre" "chemin du fichier excel" MAX
    result: le fichier s'ouvre (SUPER !)

    là j'aimerai executer la mm commande (ou une cmd equivalente) mais à partir d'un script php.

    Je precise que je suis sur windows 7 pro 64bits / php 5.4.2

    En vous remerciant d'avance pour votre aide.

  2. #2
    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 seulement proposer le téléchargement du fichier.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2014
    Messages : 72
    Points : 54
    Points
    54
    Par défaut
    ce n'est pas ce que je souhaite.

    car je suis déjà passé par les parameter
    header:content-type: application /msexcel
    header(content-disposition: attachement; filename="monfichier.xlxs")

    et Internet explorer me propose soit de l'ouvrire soit de le telecharger : donc je choisi telecharger
    mais chrome ou firefox le telechargent directement et ce n'est pas ce que je veux !

    moi tous ce qui m'interesse c'est d'ouvrire le fichier et de faire des modif manuellement puis le fermer c tous


    j'ai cru comprendre d'après ce que j'ai lu sur le net qu'il aurait un moyen de faire en lanceant le fichier à partir d'un fichier.bat mais j'ai trouvé aucune solution de ce côté encore

  4. #4
    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 : 43
    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
    Points : 7 503
    Points
    7 503
    Par défaut
    de base, en php / html il n'est pas possible de modifier un document à la volé.
    les seuls commande d'ouverture que tu indique "exec" etc ... ne peuvent ouvrir excel que sur le serveur par sur le poste client.
    la vie n'est pas cirrhose des foies ...

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

  5. #5
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2014
    Messages : 72
    Points : 54
    Points
    54
    Par défaut SOLUTION
    Hey,

    Je reviens avec une solution fonctionnelle mais que sur Internet Explorer (11 pour ma part)

    Il faut donc utiliser les contrôles ActiveX avec JavaScript, SANS OUBLIER DE MODIFIER LES PARAMETRES DE SECURITE DE INTERNET EXPLORER CONCERNANT LES CONTROLES ACTIVEX, voici comment faire :

    1- D’abord modifie les règle de sécurité de Internet Explorer (rien de grave car on donne juste à l’utilisateur la possibilité d’autoriser ou non les contrôles ActiveX :

    Outils -> Options Internet -> Sécutité -> Personnaliser le niveau -> cocher ‘demander’ dans ‘Contrôles d’initialisation et de scripts ActiveX non marqués comme sécurisés pour l’écriture de scripts’ -> OK -> OK

    2- Ajouter ce script JavaScript dans la page web sur laquelle on souhaite générer des liens qui ouvre des fichiers sur le post client :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <script type="text/JavaScript">
    	function start(link)
    	{
    		if(link != "")
    		{
    			var obj= new ActiveXObject("Excel.Application"); //démarre l'application Excel
    			obj.DisplayAlerts = false; //désactive l'affichage des alertes
    			obj.Visible = true; //rend l'application Excel visible à l'écran
    			var wBook = obj.Workbooks.open(link); //ouvre le fichier donné par (link) dans l'application Excel
    		}
    	}
    </script>
    3- puis le lien dans la page web (html/php)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a  onclick="start([chemin vers le fichier]))">Cliquer ici pour ouvrir le fichier</a>
    Après le clic sur le lien, une fenêtre de dialogue s’ouvre avec un message : Un contrôle ActiveX présent sur cette page pourrait être dangereux sur d’autres parties de la page. Voulez-vous autoriser cette action ?

     cliquer sur OUI

    Attention : le message prévient que si on clique sur OUI ça va autoriser l’action sur toute la page, ça veut dire que d’autres contrôles ActiveX peuvent être exécutés sur la même page sans qu’Internet Explorer demande l’autorisation à l’utilisateur (normal car ce dernier l’a déjà autorisé)

    Voilà j’espère que ça servira un jour à quelqu’un

  6. #6
    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 : 43
    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
    Points : 7 503
    Points
    7 503
    Par défaut
    le souci c'est que les controles activex ne sont plus tolérés. donc techno obsolète complète et pour ma part interdite dans toutes les sociétés où j'ai pus bosser.
    la vie n'est pas cirrhose des foies ...

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

  7. #7
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2014
    Messages : 72
    Points : 54
    Points
    54
    Par défaut
    Je suis d’accord avec toi, mais je précise que c’est la seule solution.
    Et pour ma part le problème est réglé du moment que ça marche.

    Je précise que je l’utilise juste en local (les pc n’ont accès qu’à l’intranet de la boite) donc pas de problème de ce côté.

    Après si quelqu’un l’utilise autrement c’est à ses risques et périls


    Merci à tous pour vos contributions.

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

Discussions similaires

  1. [PowerBuilder] Executer une commande DOS sous PB
    Par Deedoo2000 dans le forum Powerbuilder
    Réponses: 3
    Dernier message: 09/08/2006, 16h54
  2. Lancer une commande DOS a partir d'un poste UNIX
    Par sam.fet dans le forum Linux
    Réponses: 7
    Dernier message: 19/05/2006, 15h06
  3. [API][Système] Executer une commande dos avec arguments
    Par oOoOuuhmAn dans le forum Général Java
    Réponses: 4
    Dernier message: 17/03/2006, 13h37
  4. executer une commande dos a partir d'une page WEB
    Par wagga84 dans le forum Langage
    Réponses: 1
    Dernier message: 15/03/2006, 12h09
  5. [Debutant(e)][Système]Executer une commande DOS
    Par iceman dans le forum API standards et tierces
    Réponses: 4
    Dernier message: 18/05/2004, 15h30

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