Mam mały problem z akcją do obsługi pobierania pliku. Kod tej akcji wygląda tak:
public function executeDownload() { $this->attachment = $this->getRoute()->getObject(); $filePath = sfConfig::get('sf_web_dir')."/uploads/projects/".$this->attachment->getName().".".$this->attachment->getExt(); $response = $this->getResponse(); $response->clearHttpHeaders(); $response->setHttpHeader('Content-Disposition', 'attachment; filename="'.$this->attachment->getName().".".$this->attachment->getExt().'"'); $response->setHttpHeader('Pragma', 'public'); $response->setHttpHeader('Content-Type', 'application/force-download'); $response->setHttpHeader('Content-Type', 'application/octet-stream'); $response->setHttpHeader('Content-Type', 'application/download'); $response->sendHttpHeaders(); return sfView::NONE; } else { $this->forward404('File not found'); } }
No jak klikam w link to ściąga się plik o dobrej nazwie jednak o wadze 0 czyli pusty. Plik istnieje. Wpisanie wartości $filePath w pasek adresu powoduje pokazanie sie pliku (obrazka na przykład). No nie wiem jak to ugryźć żeby działało.
Proszę o jakieś porady.
(używam symfony 1.4 doctrine lokalnie na wamp'ie)