Invité
Invité n'ayant pas de compte PHPfrance
16 juil. 2009, 21:52
merci à tous pour vos réponses. J'ai testé le téléchargement d'un zip de 9 mo qui prend normalement bien moins de 30 secondes à télécharger.
En fait, le téléchargement s'interrompt bien avant les 30 secondes. Il commence, et la barre de téléchargement passe à 100% en un éclair, en m'indiquant que mon fichier de 200 octets alors qu'il en fait 9 Mo.
ça n'a pas l'air d'être le max exectution time...d'ou cela peut il venir?
Je mets la totalité de mo code au cas où...c'est de l'objet Joomla mais normalement ça reste tout à fait compréhensible:
<?php
defined('_JEXEC') or die();
$dwldCode = JRequest::getVar('dwldCode', null); //récupération d'un code permettant au client de télécharger, envoyé en POST par un formulaire.
if ($dwldCode)
{
//récup du nom de fichier comportant ce code dans la bdd
$db =& JFactory::getDBO();
$sql = "SELECT ao.nomFichier FROM #__add_codes AS ac, #__add_operations AS ao WHERE ac.idOperation = ao.id AND ac.nbDwldRea < ac.nbDwldAuto AND ac.published = 1 AND ao.published = 1 AND ac.code = '". $dwldCode ."'";
$db =& JFactory::getDBO();
$db->setQuery($sql);
$row = $db->loadObject();
if ($row)
{
$file = 'http://www.mondomaine.com/_FICHIERS/'. $row->nomFichier;
$filename = basename($file);
//mon header, posté plus haut
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename="'.$filename.'"');
header('Accept-Ranges: bytes');
header('Content-Length: '.filesize($file) );
readfile($file);
}
else
{
$msg = "Votre code n'est pas valide ou a expiré. <br /> Veuillez vérifier le code ou vous en procurer un autre.";
}
}
?>
Merci à tous si vous avez une piste ou si ce type de pb vous est déjà arrivé avec un fichier, car je rame depuis des jours et je nage complètement.