1, 'soap_version' => SOAP_1_1, 'location' => 'http://78.31.45.206/ws2/', 'uri' => 'http://78.31.45.206/', 'login' => $login, 'password' => $_SESSION['tabInfo']['password'] )); try { $res = $client->getPortefeuilleCsv($login, $idClient); } catch (SoapFault $fault) { echo "Erreur"; exit; } $url = ''; if (isset($res['result']['Url']) == true) { $url = $res['result']['Url']; } FB::log($url,'URL'); //On arrete tout, il y a eu un problème if (empty($url)){ echo 'La construction du fichier à échoué !'; exit; } //Récupération du fichier require_once 'common/curl.php'; $path = PATH_SITE.'/cache/portefeuille/'; // Recuperation du nom du fichier $tableau = explode('/', $url); $file = $tableau[sizeof($tableau) - 1]; FB::log($file,'Fichier'); // Suppression du fichier si le temps de cache est depasse if (file_exists($path.$file)){ $dateFile = filemtime($path.$file); $now = mktime(date('G'), date('i'), date('s'), date('m') , date('d'), date('Y')); $maxTime = mktime(date('G',$dateFile)+1, date('i',$dateFile), date('s',$dateFile), date('m',$dateFile), date('d',$dateFile), date('Y',$dateFile)); if (in_array(ENVIRONNEMENT, array('REC','DEV')) || $maxTime-$now<0) { FB::info('Suppression fichier de cache'); unlink($path.$file); } } sleep(5); // Recuperation du fichier sur le serveur if (!file_exists($path.$file)) { // On check si le fichier est present sur l'url $url_tab = getUrl($url, '', '', '', false, '', '', 0); if ($url_tab['code'] == 408 || $url_tab['code'] == 400 || $url_tab['code'] == 404) { // Fichier non disponible FB::info('Erreur lors de la recup du fichier'); } else { // Ecriture du fichier sur le serveur en local $body = $url_tab['body']; $fp = fopen($path.$file, 'w'); fwrite($fp, $body); fclose($fp); } } // Le fichier existe sur l'extranet $content_type = 'application/csv-tab-delimited-table'; if (file_exists($path.$file)) { if (filesize($path.$file) > 0) { header('Content-Transfer-Encoding: none'); header('Content-type: ' . $content_type.''); header('Content-Length: ' . filesize($path.$file)); header('Content-MD5: ' . base64_encode(md5_file($path.$file))); header('Content-Disposition: filename="' . basename($path.$file) . '"'); header('Cache-Control: private, max-age=0, must-revalidate'); header('Pragma: public'); ini_set('zlib.output_compression', '0'); echo file_get_contents($path.$file); } else { echo 'Fichier vide.'; } } else { echo '--'; }