Bonjour,

Voilà je récupère une application php qui me permet de faire des exports en fonction des sociétés. J'ai besoin de le modifier ou de créer une nouvelle page en supprimant la sélection des sociétés, il faut que je puisse faire une extraction sur l'ensemble des sociétés.

export.php :

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
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
<?php
header('Content-Type: text/html; charset=utf-8');
 
//cas de la tâche planifiée
if (!empty($argv[1]) && $argv[1] === 'planif') {
    $url = 'passerelle_carburant';
    require_once dirname(__FILE__) . '/../../config.php';
    require_once dirname(__FILE__) . '/../../model/common/Utils.php';
    \Common\Utils::initAutoloader();
    try {
        $nameFile = date('Ymd_His') . '_export.txt';
        $pathLog = dirname(__FILE__) . '/../../log/' . $nameFile;
        if (file_exists($pathLog)) {
            unlink($pathLog);
        }
        $fileLog = fopen($pathLog, 'c+b');
        $cpyMan = new \Admin\Company\CompanyManager(new Common\DAO(DB_CONFIG));
        $tabCpy = $cpyMan->getAll();
        $expMan = new Report\ExportManager(new Common\DAO(DB_EPACK));
    foreach ($tabCpy as $cpy) {
            $dataRes = $expMan->getAll(['month' => date('m') - 1, 'year' => date('Y'), 'cpy' => $cpy]);
            fwrite($fileLog, 'Société : ' . $cpy->getName() . "\r\n");
            fwrite($fileLog, '- Consommation : ' . $dataRes['conso'] . "\r\n");
            fwrite($fileLog, '- Refacturation : ' . $dataRes['refact'] . "\r\n");
        }
        fclose($fileLog);
        $mail = new Common\Mail('Passerelle carburant - Export automatique', 'L\'export mensuel s\'est déroulé avec succès', DEST_MAIL, ['sigmail' => 'Service informatique']);
        $mail->addFile(['name' => $nameFile, 'tmp_name' => $pathLog, 'type' => 'application/txt', 'size' => filesize($pathLog)]);
        $mail->sendMail();
 
        // Lancer le script PowerShell à la fin de l'export
        exec('powershell.exe -ExecutionPolicy Bypass -File C:\Intranet\Passerelle_carburant\script\convert_crlf.ps1');
 
    } catch (\Admin\AdminException | Exception | Swift_SwiftException $exc) {
        fwrite($fileLog, 'Erreur lors de l\'export mensuel ' . $exc->getMessage());
        $mail = new Common\Mail('Passerelle carburant - Erreur', 'Une erreur est survenue lors de l\'export mensuel : ' . $exc->getMessage(), DEST_MAIL, ['sigmail' => 'Service informatique']);
        $mail->sendMail();
    }
} else {
    require_once(dirname(__FILE__) . '/../../view/template/header.php');
    if (empty($_SESSION['authentPasserelleCarburant']['authent']) && empty(filter_input(INPUT_GET, 'planif'))) {
        require(dirname(__FILE__) . '/../../view/template/noaccess.php');
    } else {
        try {
            $safePost = filter_input_array(INPUT_POST);
            $yearSel = empty($safePost['year']) ? date('Y') : $safePost['year'];
            $monthSel = empty($safePost['month']) ? date('m') - 1 : $safePost['month'];
            if (!empty($safePost)) {
                $cpy = unserialize(urldecode($safePost['cpy']));
                $expMan = new Report\ExportManager(new Common\DAO(DB_EPACK));
                $dataRes = $expMan->getAll(['month' => $monthSel, 'year' => $yearSel, 'cpy' => $cpy]);
            }
    // Lancer le script PowerShell à la fin de l'export
        exec('powershell.exe -ExecutionPolicy Bypass -File C:\Intranet\Passerelle_carburant\script\convert_crlf.ps1');
        } catch (Admin\AdminException $ex) {
            echo new \Common\Alert($ex->getMessage(), 'error');
        }
    }
    include (dirname(__FILE__) . '/../../view/export/v_export.php');
    include (dirname(__FILE__) . '/../../view/template/footer.php');
}
?>

v_export.php :

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
<h1 class="text-primary text-center">Export</h1>
<!--Formulaire de sélection du mois et de l'année à exporter-->
<form name="form" method="POST" id="form" class="mb-3">
    <fieldset class='w-25 m-auto border p-3'>
        <legend class='text-info'>Paramètres</legend>
 
        <div class="mb-3 row justify-content-center align-items-center">
            <div class="col-3 text-end">
                <label class="fs-5" for="cpy">Société</label>
            </div>
            <div class="col-4">
                <select id="cpy" name="cpy" class="form-select form-control form-control-sm" required>
                    <?= Admin\Company\Company::printOptionSelect($safePost, unserialize($_SESSION['authentPasserelleCarburant']['usr'])->getTabCpy()) ?>
                </select>
            </div>
        </div>
 
        <div class="mb-3 row justify-content-center align-items-center">
            <div class="col-3 text-end">
                <label class="fs-5" for="year">Année</label>
            </div>
            <div class="col-4">
                <select id="year" name="year" class="form-select form-control form-control-sm" required>
                    <option value="" disabled hidden>Défaut</option>
                    <?php
                    for ($i = 2011; $i <= $yearSel; $i++) {
                        if ($i === (integer) $yearSel) {
                            ?>
                            <option selected value="<?= $i ?>"><?= $i ?></option>
                            <?php
                        } else {
                            ?>
                            <option value="<?= $i ?>"><?= $i ?></option>
                            <?php
                        }
                    }
                    ?>
                </select>
            </div>
        </div>
        <div class="mb-3 row justify-content-center align-items-center">
            <div class="col-3 text-end">
                <label class="fs-5" for="month">Mois</label>
            </div>
            <div class="col-4">
                <select id="month" name="month" class="form-select form-control form-control-sm" required>
                    <option value="" disabled hidden>Défaut</option>
                    <?php
                    foreach (TAB_MONTH as $key => $month) {
                        if ($key === (integer) $monthSel) {
                            ?>
                            <option selected value="<?= $key ?>"><?= $month ?></option>
                            <?php
                        } else {
                            ?>
                            <option value="<?= $key ?>"><?= $month ?></option>
                            <?php
                        }
                    }
                    ?>
                </select>
            </div>
        </div>
        <div class="text-center">
            <input type="submit" value="Exporter" name="validForm" title="Export vers FTP : <?= FTP_ACTIF ? 'Actif' : 'Inactif' ?>" id="validForm" class="btn btn-sm btn-primary">
        </div>
    </fieldset>
</form>
<?php
if (!empty($safePost) && !empty($dataRes)) {
    ?>
    <!--Le formulaire est soumis, on affiche le résultat de l'export-->
    <!--Tableau de données-->
    <fieldset class='w-25 m-auto border p-3'>
        <legend class='text-info'>Résultat de l'export pour la société <?= $cpy->getName() ?> sur la période <?= mb_strtolower(TAB_MONTH[$monthSel]) ?> <?= $yearSel ?></legend>
        <p>Consommation : <?= $dataRes['conso'] ?></p>
        <p>Refacturation : <?= $dataRes['refact'] ?></p>
    </fieldset>
    <?php
}