indir kutusu görünür iken nasıl i yönlendirme sayfası olabilir?

2 Cevap php

Şimdi bu kod var;

<?php

$file = "pain.png";

if (file_exists($file)) {
    header('Content-Description: File Transfer');
    header('Content-Type: application/octet-stream');
    header('Content-Disposition: attachment; filename='.basename($file));
    header('Content-Transfer-Encoding: binary');
    header('Expires: 0');
    header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
    header('Pragma: public');
    header('Content-Length: ' . filesize($file));
    ob_clean();
    flush();
    readfile($file);
    exit;
}
?>

Bu kod yükleme kutusu belirir. Ama indirme kutu ise hala burada sayfasını "Thank You" için bu sayfaya yönlendirmek istiyorum. I bu nasıl yapabilirim?

Teşekkürler ...

2 Cevap

Bir Meta yenileme kullanarak bu başarabilirsiniz (http://en.wikipedia.org/wiki/Meta_refresh)

Böyle indirme sayfası için ana sayfasından link olacaktır.

index.html

  <html><head></head><body>
Download my awesome <a href="download.html">file</a>
</body></html>

download.html

    <html>
        <head>
        <meta http-equiv="refresh" content="0;url=http://example.com/download.php" />
        </head>
        <body>
        Thanks for choosing Foobar!  Your download will begin shortly.
    If you're download does not begin, 
click <a href="http://www.example.com/download.php">here</a>
        </body>
        </html>

Indir is HTTP yanıtı olduğundan, karşıdan yanıt içinde bunu yapamam. Onları yönlendirmek ve daha sonra bu standart çözüm çoğu yerde gibi görünüyor vs vs "teşekkürler, indirme şimdi ne olacak" diyebiliriz.

Açık olmak gerekirse, size sayfa yükleme URL'ye yönlendirme olur teşekkür ederim.