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

  1. #1
    Nouveau membre du Club
    exportation d'un tableau de données en excel et génération d'un diagrame
    Bonjour une fois de plus je me refaire a vous pour avancé dans la réalisation de mon application après avoir exécuté une requête j’aimerai bien exporter le tableau des résultats en excel en généré un diagramme automatiquement j'ai lu la partie qui concerne les exportation excel mais j'avoue ne pas avoir compris comment cela fonctionne merci de bien vouloir me guidé

  2. #2
    Rédacteur

    Bonjour,
    IL y a actuellement un tutoriel pour faire un export "csv" mais pas excel, donc sans possibilité de faire des formules, graphiques dynamiques..

    Pour faire de la "vrai" génération excel, il faut utiliser la librairie phpexcel
    Un post d'un utilisateur posait cette même question
    http://www.developpez.net/forums/d13...work-phpexcel/
    Framework php sécurisé et simple à prendre en main avec générateur web http://mkframework.com/ (hebergé sur developpez.com)
    Mes cours/tutoriaux

  3. #3
    Nouveau membre du Club
    merci je vais de se pas regardé!

  4. #4
    Membre confirmé
    Sinon pour faire un export Excel CSV simple sans la librairie (tu seras obligé de faire tes graphique par toi même sous Excel)

    Il te faut un Layout

    ExportCsv :
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <?php
    header('Cache-Control:public');
    header('Pragma:');
    header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
    //header("Content-type: application/vnd.ms-excel; charset=UTF-8");
    header("Content-Disposition: attachment; filename=\"".$this->sFileName."\"");
    header('Content-Transfer-Encoding:binary');
    header("Content-Type: application/".$this->sExtension.";name=\"".$this->sFileName."\"");
     
    flush();
     
    echo"\xEF\xBB\xBF"; //Permet à Excel de reconnaitre que le fichier est en UTF-8
    echo $this->load('main');



    Une fonction dans le module :

    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
     
    public function _exportCSV() {            
                $sDate=  date('dmy');
                $sFileName ="";
                $tMembres=model_membres::getInstance()->findExportCSV();
    			$sFileName = 'ExportLeFuturNomDeMonFichier_'.$sDate.'.csv';
                $oView=new _view('membres::exportCSV');
                $oView->tMembres=$tMembres;            
                $this->oLayout->add('main',$oView);
                $this->oLayout->setLayout('export');
                $this->oLayout->sFileName=$sFileName;
                $this->oLayout->sExtension='csv';
     
                $this->oLayout->show();
                exit;            
            }


    Une fonction dans ton model

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    public function findExportCSV() {
                $requete =  "SELECT `indexMembre`, `nom`, `prenom`,  FROM '.$this->sTable.' where `id` = '1' AND `active`=1";
                return $this->findMany($requete);
    }


    Puis une vue :

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    INDEX;NOM;PRENOM;
    <?php
    	foreach($this->tMembres as $oMembre):
    		   echo html_entity_decode($oMembre->indexMembre).';';
    			echo html_entity_decode($oMembre->nom).';';
    			echo html_entity_decode($oMembre->prenom)."\n";
     
    	endforeach;
    La théorie, c'est quand on sait tout et que rien ne fonctionne.
    La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi.

    Ici, nous avons réuni théorie et pratique : Rien ne fonctionne... et personne ne sait pourquoi !


    Albert Einstein

  5. #5
    Nouveau membre du Club
    bonjour, j'ai lu le fichier mais j'avoue ne pas comprendre comment cela fonctionne franchement je suis bleue

  6. #6
    Rédacteur

    Bonsoir,
    Je vais rédiger un tutoriel pour utiliser phpExcel avec le mkframework, je vous tiens au courant
    Framework php sécurisé et simple à prendre en main avec générateur web http://mkframework.com/ (hebergé sur developpez.com)
    Mes cours/tutoriaux

  7. #7
    Nouveau membre du Club
    merci j'attends alors

  8. #8
    Rédacteur

    Tutoriel disponible ici: http://mkframework.com/tutoriaux.html#phpexcel

    N’hésitez pas si certains points ne sont pas claire
    Framework php sécurisé et simple à prendre en main avec générateur web http://mkframework.com/ (hebergé sur developpez.com)
    Mes cours/tutoriaux

  9. #9
    Rédacteur

    Je prépare un module, comme Guriddo facilitant son utilisation, je vous tiens au courant
    Framework php sécurisé et simple à prendre en main avec générateur web http://mkframework.com/ (hebergé sur developpez.com)
    Mes cours/tutoriaux

  10. #10
    Rédacteur

    Module créé, et documentation associée
    http://mkframework.com/telechargerMo..._phpExcel.html

    J'espère que ceci vous aidera a utiliser cette très bonne bibliothèque
    Framework php sécurisé et simple à prendre en main avec générateur web http://mkframework.com/ (hebergé sur developpez.com)
    Mes cours/tutoriaux

  11. #11
    Nouveau membre du Club
    merci pour votre aide j'ai essaie de faire l'export avec l'exemple du tuto sa me renvoie ce message d'erreur
    include(../module/phpExcel/main.php): failed to open stream: No such file or directory
    #0 C:\wamp\www\mkframework_v4_115_2_r284\data\genere\Accompagnement familial\plugin\plugin_autoload.php(13): exception_error_handler(2, 'include(../modu...', 'C:\wamp\www\mkf...', 13, Array)
    #1 C:\wamp\www\mkframework_v4_115_2_r284\data\genere\Accompagnement familial\plugin\plugin_autoload.php(13): plugin_autoload::autoload()
    #2 [internal function]: plugin_autoload::autoload('module_phpExcel')
    #3 C:\wamp\www\mkframework_v4_115_2_r284\data\genere\Accompagnement familial\module\mensuelafd\main.php(211): spl_autoload_call('module_phpExcel')
    #4 C:\wamp\www\mkframework_v4_115_2_r284\lib\framework\class_root.php(263): module_mensuelafd->_ind()
    #5 C:\wamp\www\mkframework_v4_115_2_r284\data\genere\Accompagnement familial\public\index.php(47): _root->run()
    #6 {main}

  12. #12
    Nouveau membre du Club
    a defaut de Excel j'ai essaie d'utilisé l'export csv aussi mai lui il me permet effectivement de téléchargé mais malheureusement il me renvoie
    <br /> <br /> <br /> <br /> <br /> <br /> <br /> <br />
    <font size='1'><table class='xdebug-error xe-parse-error' dir='ltr' border='1' cellspacing='0' cellpadding='1'> <font size='1'><table class='xdebug-error xe-parse-error' dir='ltr' border='1' cellspacing='0' cellpadding='1'> <font size='1'><table class='xdebug-error xe-parse-error' dir='ltr' border='1' cellspacing='0' cellpadding='1'> <font size='1'><table class='xdebug-error xe-parse-error' dir='ltr' border='1' cellspacing='0' cellpadding='1'> <font size='1'><table class='xdebug-error xe-parse-error' dir='ltr' border='1' cellspacing='0' cellpadding='1'> <font size='1'><table class='xdebug-error xe-parse-error' dir='ltr' border='1' cellspacing='0' cellpadding='1'> <font size='1'><table class='xdebug-error xe-parse-error' dir='ltr' border='1' cellspacing='0' cellpadding='1'> <font size='1'><table class='xdebug-error xe-parse-error' dir='ltr' border='1' cellspacing='0' cellpadding='1'>
    <tr><th align='left' bgcolor='#f57900' colspan="5"><span style='background-color: #cc0000 color: #fce94f font-size: x-large '>( ! )</span> Parse error: syntax error, unexpected ' ' in C:\wamp\www\mkframework_v4_115_2_r284\data\genere\Accompagnement familial\module\mensuelafd\view\csvbilan.php

  13. #13
    Rédacteur

    Il vous manque le module phpExcel, non ?

    nclude(../module/phpExcel/main.php): failed to open stream: No such file or directory

    ../module/phpExcel/main.php
    Framework php sécurisé et simple à prendre en main avec générateur web http://mkframework.com/ (hebergé sur developpez.com)
    Mes cours/tutoriaux

  14. #14
    Nouveau membre du Club
    Bonsoir j'ai bien ajouté phpExcel comme module j'ai revu le module j'avais mis le dossier phpExcel dans un autre dossier phpExcel mais j'ai régler ccela il m'envoie un autre message d'erreur
    fopen(/tmp/monFichier.xls): failed to open stream: No such file or directory
    #0 [internal function]: exception_error_handler(2, 'fopen(/tmp/monF...', 'C:\wamp\www\mkf...', 90, Array)
    #1 C:\wamp\www\mkframework_v4_115_2_r284\data\genere\Accompagnement familial\module\phpExcel\lib\Classes\PHPExcel\Shared\OLE\PPS\Root.php(90): fopen('/tmp/monFichier...', 'wb')
    #2 C:\wamp\www\mkframework_v4_115_2_r284\data\genere\Accompagnement familial\module\phpExcel\lib\Classes\PHPExcel\Writer\Excel5.php(226): PHPExcel_Shared_OLE_PPS_Root->save('/tmp/monFichier...')
    #3 C:\wamp\www\mkframework_v4_115_2_r284\data\genere\Accompagnement familial\module\phpExcel\main.php(30): PHPExcel_Writer_Excel5->save('/tmp/monFichier...')
    #4 C:\wamp\www\mkframework_v4_115_2_r284\data\genere\Accompagnement familial\module\mensuelafd\main.php(223): module_phpExcel->save(Object(PHPExcel), '/tmp/monFichier...')
    #5 C:\wamp\www\mkframework_v4_115_2_r284\lib\framework\class_root.php(263): module_mensuelafd->_ind()
    #6 C:\wamp\www\mkframework_v4_115_2_r284\data\genere\Accompagnement familial\public\index.php(47): _root->run()
    #7 {main}
    merci de m'aider a résoudre cela

  15. #15
    Rédacteur

    Bonjour,
    Je pense que vous etes sous windows et que vous avez copié l'exemple sous linux: le repertoire /tmp n'existe pas sur windows

    fopen(/tmp/monFichier.xls): failed to open stream: No such file or directory
    Framework php sécurisé et simple à prendre en main avec générateur web http://mkframework.com/ (hebergé sur developpez.com)
    Mes cours/tutoriaux

  16. #16
    Nouveau membre du Club
    effectivement je suis sous windows bon j'ai indiqué un autre chemins il enregistre effectivement le fichier je vais essaie de faire tous les calculs avant d'indiqué que le problème est résolu une fois de plus merci

  17. #17
    Futur Membre du Club
    exportation des données phpexcel
    bonjour,
    je suis bloqué dans mon développement car voulant intégrer la librairie phpexcel pour exporter les données. Malgré la lecture du tuto, je ne sais pas à quel saint me vouer

  18. #18
    Rédacteur

    Bonjour,
    vous avez suivi ce tutoriel ?
    http://mkframework.com/telechargerMo..._phpExcel.html

    il suffit de desarchivez dans votre répertoire module puis de faire comme indiqué

    Code php :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
     
    public function _index(){
           //on instancie le module
           $oModuleExcel=new module_phpExcel;
     
           //on recupere ici l'objet PhpExcel
           //dans la documentation equivalent a $objPHPExcel=new PHPExcel();
           $objPHPExcel=$oModuleExcel->getObject();
     
     
           //a partir de la vous referez a la documentation pour personnaliser votre Excel
           $objPHPExcel->setActiveSheetIndex(0)
    ->setCellValue('A1', 'Hello');
     
    //enfin ici pour sauvegarder le fichier
    $oModuleExcel->save($objPHPExcel,'/tmp/monFichier.xls');
     
       }
    Framework php sécurisé et simple à prendre en main avec générateur web http://mkframework.com/ (hebergé sur developpez.com)
    Mes cours/tutoriaux

  19. #19
    Futur Membre du Club
    phpexcel
    bonjour IMIKADO,
    Youpi
    le code a marché, le fichier xls est téléchargé mais malheureusement sans les données. rien que les entêtes sont visible

  20. #20
    Futur Membre du Club
    expression reguliaire
    bonjour
    prière de m'aider à intégrer l'expression reguliaire prag_match dans MK pour faire des recherche dans un tableau où les données sont alphanumerique

    cordialement

###raw>template_hook.ano_emploi###