Rumah pembangunan bahagian belakang tutorial php php 文件上载有关问题

php 文件上载有关问题

Jun 13, 2016 pm 01:09 PM
content gt header quot

php 文件下载问题

PHP code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
function download_file($filename){
     //below to provide the download
                    if (file_exists($filename)) {
                        
                         $file = fopen($filename);
                    header('Content-Description: File Transfer');
                    header('Content-Type: application/octet-stream');
                    header('Content-Disposition: attachment; filename=' . basename($filename));
                    header('Content-Transfer-Encoding: binary');
                    header('Expires: 0');
                    header('Cache-Control: must-revalidate');
                    header('Pragma: public');
                    header('Content-Length: ' . filesize($filename) . ' bytes');
                    //ob_clean();
                    //flush();
                    readfile($filename);
                    fclose($file);
                       exit;
}
$this->_redirect('xxxxxxx');


Salin selepas log masuk




以上是网上通用的一段php文件下载的代码,我的问题是这样的,我要实现点击一个button实现下载同时实现刷新页面的内容吗,也就是说我不希望 exit;我在文件下载了之后还要继续执行之后的代码。也就是说我的下载完成之后$this->_redirect('xxxxxxx');这个语句不执行,请教下有什么解决方法吗?

------解决方案--------------------

$file = fopen($filename);
readfile($filename);
fclose($file);
直接readfile就行了。


这个重定向只能用JS做了, 但onclick只能标记一下变量, 等失去焦点检查一下变量再说.


C/C++ code
[User:root Time:23:25:51 Path:/home/apache/web]$ cat index.html 



<meta http-equiv="Content-Type" content="text/html; charset=utf-8">


<script type="text/javascript">
var is_click = false;
</script>
<a href="index.php" onclick="is_click = true;" onmouseout="if (is_click) location.href='main.php';">aaa</a>


<br><font color="#e78608">------解决方案--------------------</font><br>不可以,一个HTTP会话只能传递一种类型的数据<br>况且下载对用户而言是异步的
<br><font color="#e78608">------解决方案--------------------</font><br>打开而不是保存,这是因为文件类型浏览器能够识别,比如chrome会显示pdf文件,而不是保存。<br>你需要额外添加一个Header响应头:<br>Content-Disposition: attachment; filename="$文件名"<br><br>至于如何添加,你可以让PHP来读取输出这个生成的文件,并用header函数即可。<br>或者web服务器也可以配置对文件强制下载,不过我不知道怎么设置 <div class="clear">
                 
              
              
        
            </div>
Salin selepas log masuk
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial Java
1662
14
Tutorial PHP
1262
29
Tutorial C#
1235
24
Apakah perbezaan antara Huawei GT3 Pro dan GT4? Apakah perbezaan antara Huawei GT3 Pro dan GT4? Dec 29, 2023 pm 02:27 PM

Ramai pengguna akan memilih jenama Huawei apabila memilih jam tangan pintar Antaranya, Huawei GT3pro dan GT4 adalah pilihan yang sangat popular. Apakah perbezaan antara Huawei GT3pro dan GT4? 1. Rupa GT4: 46mm dan 41mm, bahan cermin kaca + badan keluli tahan karat + cangkang belakang gentian resolusi tinggi. GT3pro: 46.6mm dan 42.9mm, bahannya ialah kaca nilam + badan titanium/badan seramik + cangkerang belakang seramik 2. GT4 yang sihat: Menggunakan algoritma Huawei Truseen5.5+ terkini, hasilnya akan lebih tepat. GT3pro: Penambahan elektrokardiogram ECG dan saluran darah serta keselamatan

Bagaimanakah SpringBoot melepasi parameter dalam Pengepala melalui panggilan Feign? Bagaimanakah SpringBoot melepasi parameter dalam Pengepala melalui panggilan Feign? May 16, 2023 pm 08:38 PM

[SpringBoot] Melepasi parameter dalam Pengepala melalui panggilan Feign Cara menghantar parameter Pengepala melalui Perihalan Masalah Feign Apabila kami menggunakan Feign untuk meminta antara muka API perkhidmatan lain dalam Spring Cloud, terdapat keperluan untuk lulus parameter dalam Pengepala Jika tidak pemprosesan khas dilakukan, ia akan Parameter dalam Pengepala akan hilang. Penyelesaian 1: Lulus melalui @RequestHeader(name="headerName"). Contohnya: Feign ditakrifkan seperti berikut @FeignClient(name="service-name")pub

Betulkan: Alat snipping tidak berfungsi dalam Windows 11 Betulkan: Alat snipping tidak berfungsi dalam Windows 11 Aug 24, 2023 am 09:48 AM

Mengapa Alat Snipping Tidak Berfungsi pada Windows 11 Memahami punca masalah boleh membantu mencari penyelesaian yang betul. Berikut ialah sebab utama Alat Snipping mungkin tidak berfungsi dengan betul: Focus Assistant dihidupkan: Ini menghalang Snipping Tool daripada dibuka. Aplikasi rosak: Jika alat snipping ranap semasa pelancaran, ia mungkin rosak. Pemacu grafik lapuk: Pemacu yang tidak serasi mungkin mengganggu alat snipping. Gangguan daripada aplikasi lain: Aplikasi lain yang sedang berjalan mungkin bercanggah dengan Alat Snipping. Sijil telah tamat tempoh: Ralat semasa proses naik taraf boleh menyebabkan penyelesaian mudah ini sesuai untuk kebanyakan pengguna dan tidak memerlukan sebarang pengetahuan teknikal khusus. 1. Kemas kini apl Windows dan Microsoft Store

Apakah maksud pengepala linux? Apakah maksud pengepala linux? Jul 18, 2023 pm 03:34 PM

Pengepala Linux merujuk kepada permulaan fail atau aliran data, yang digunakan untuk mengandungi metadata tentang kandungan Dengan menulis dan menggunakan fail Pengepala dengan betul, pembangun boleh menggunakan sumber sistem dengan lebih baik dan meningkatkan kebolehbacaan dan Kebolehselenggaraan kod.

Bagaimana untuk melompat dalam pengepala php Bagaimana untuk melompat dalam pengepala php Dec 02, 2022 am 09:14 AM

Cara melaksanakan lompat dalam pengepala php: 1. Gunakan "Header("Location:$url");" untuk melaksanakan lompatan 2. Gunakan if judgment untuk melaksanakan lompatan, dengan pernyataan lompat seperti "if($_COOKIE[" u_type; "]){ header('lokasi:register.php'); } else{ setcookie('u_type','1','86400*360');".

Cara menggunakan kaedah PHP header() untuk melaraskan halaman web Cara menggunakan kaedah PHP header() untuk melaraskan halaman web Mar 28, 2023 pm 01:54 PM

PHP ialah bahasa pengaturcaraan yang berkuasa yang boleh digunakan untuk mencipta laman web dinamik dan aplikasi web. Salah satu ciri yang paling berkuasa ialah kaedah header() PHP. Dalam artikel ini, kami akan meneroka cara menggunakan kaedah header() PHP untuk melaraskan halaman web.

Apakah perbezaan antara kepala teg html5 dan pengepala? Apakah perbezaan antara kepala teg html5 dan pengepala? Jan 17, 2022 am 11:10 AM

Perbezaan: 1. Tag kepala digunakan untuk menentukan kepala dokumen, yang merupakan bekas untuk semua elemen kepala, dan tag pengepala digunakan untuk menentukan pengepala (maklumat pengenalan) dokumen 2. Semua pelayar menyokong teg kepala, dan versi penyemak imbas yang lebih lama Tiada penyemak imbas menyokong teg pengepala, dan penyemak imbas seperti IE9 dan ke atas diperlukan untuk menyokong teg pengepala.

Senarai lengkap fungsi muat turun fail PHP: analisis muat turun fail contoh fail baca, pengepala, Pelupusan Kandungan dan fungsi lain Senarai lengkap fungsi muat turun fail PHP: analisis muat turun fail contoh fail baca, pengepala, Pelupusan Kandungan dan fungsi lain Nov 18, 2023 pm 03:26 PM

Senarai lengkap fungsi muat turun fail PHP: analisis contoh muat turun fail bagi fail baca, pengepala, Pelupusan Kandungan dan fungsi lain Muat turun fail ialah salah satu fungsi penting dalam aplikasi Web, dan PHP, sebagai bahasa pembangunan Web yang digunakan secara meluas, menyediakan banyak A. fungsi dan kaedah untuk melaksanakan muat turun fail. Artikel ini akan memperkenalkan fungsi muat turun fail yang biasa digunakan dalam PHP, termasuk fail baca, pengepala, Content-Dispo

See all articles