我有文本文件包含的CSV文件格式的样本,我希望我的用户可以下载一个链接点击该文件。
此文件驻留在此文件夹结构中:
资产-
这是我一直尝试的代码:
<?php
$file_name = "Sample-CSV-Format.txt";
// extracting the extension:
$ext = substr($file_name, strpos($file_name,'.') + 1);
header('Content-disposition: attachment; filename=' . $file_name);
if (strtolower($ext) == "txt") {
// works for txt only
header('Content-type: text/plain');
} else {
// works for all
header('Content-type: application/' . $ext);extensions except txt
}
readfile($decrypted_file_path);
?>
<p class="text-center">Download the Sample file <a href="<?php echo base_url();?>assets/csv/Sample-CSV-Format.txt">HERE</a> It has a sample of one entry</p>
此代码在页面加载时下载文件,而不是单击链接。此外,它还下载页面的整个html结构,我只需要我在文本文件中编写的文本。
请问问题出在哪里?
就这样吧
其他文件。php
<?php
$file_name = "Sample-CSV-Format.txt";
// extracting the extension:
$ext = substr($file_name, strpos($file_name,'.')+1);
header('Content-disposition: attachment; filename='.$file_name);
if(strtolower($ext) == "txt")
{
header('Content-type: text/plain'); // works for txt only
}
else
{
header('Content-type: application/'.$ext); // works for all extensions except txt
}
readfile($decrypted_file_path);
?>
some_html_page.html
<p class="text-center">Download the Sample file <a href="<?php echo base_url();?>/someother_file.php">HERE</a> It has a sample of one entry</p>
您可以这样做,它不会重定向您,也适用于较大的文件。
在控制器“controller.php”中
function downloadFile(){
$yourFile = "Sample-CSV-Format.txt";
$file = @fopen($yourFile, "rb");
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename=TheNameYouWant.txt');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($yourFile));
while (!feof($file)) {
print(@fread($file, 1024 * 8));
ob_flush();
flush();
}
}
在您的视图“view.php”中
<a href="<?=base_url("Controller/downloadFile")?>">Download</a>
您只需通过HTML5下载一个属性就可以做到这一点。只需在下载链接中添加这一行。
<a href="<?php echo base_url();?>assets/csv/Sample-CSV-Format.txt" download="Sample-CSV-Format.txt"> HERE </a>
问题内容: 假设我的网页上有这些元素。 我想单击带有文本的链接。如何使用 链接文本 来识别或单击该元素,而没有任何独特的属性,例如id或class。 在.Net中,我可以使用。nightwatch.js中的等效项是什么 问题答案: 定位器在内部使用XPath。 因此,使用XPath单击示例中的第二个链接: 请注意,根据内部HTML的不同,您可能需要连接子级并修剪空格:
如何在appium中点击textview中文本链接 为了前任。我有一个字符串而没有一个帐户?注册表 只有注册有一个链接其他文本是禁用的,当我点击注册它导航到注册屏幕。 但我不能点击注册。
我想解析以下网站的地址:https://filialen.migros.ch/de/center:46.8202、6.9575/zoom:8/ null 有什么建议吗? 我的问题类似于前面的问题:如何在Python中解析具有相同类名的网站的多个属性?对于Selenium-debugging:在点(X,Y)不能单击元素
在我实现了一个Android应用程序的解决方案后,发布到web服务器并验证Google Order,然后发布一个下载链接。现在,我正在尝试编写一个应用程序的代码,以读取thankyou.php页面中的链接 该文件是一个“.dat”扩展名,来自某个链接。应用程序应该检索一个新页面中的链接,并让客户下载文件。
问题内容: 我有一个信息列表,其中有一个文件名超链接的字段。我希望用户在单击该文件时下载该文件。 那么,如何使用PHP单击文件名来下载文件? 我使用了代码如下的ajax进行了尝试,但未下载任何文件。 download.php javascript功能 链接下载 问题答案: 那么,如何使用PHP单击文件名来下载文件? 最简单的方法应该是链接到它。
问题内容: 我在网页上提供了pdf文件的链接以供下载,如下所示 问题是,当用户单击此链接时, 如果用户已安装Adobe Acrobat,则它将在Adobe Reader的同一浏览器窗口中打开文件。 如果未安装Adobe Acrobat,则弹出窗口提示用户下载文件。 但是,无论是否安装了“ Adobe acrobat”,我都希望它始终弹出用户下载。 请告诉我我该怎么做? 问题答案: 而不是链接到