首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >php导出html也包含数据

php导出html也包含数据
EN

Stack Overflow用户
提问于 2011-02-20 18:29:25
回答 4查看 3K关注 0票数 0

我有以下代码。如果不在页面中添加任何html标签,则将数据导出到excel。当我在page.It中添加html标记时,也会同时导出该标记。我只想导出数据。我将有用户输入的下拉和文本框。代码如下

代码语言:javascript
复制
<?php ?>
<html>
<head>
<h1> this is heading will display when page load</h1>
<head>
<body>
<p> user inputs </p>
<?PHP 

 *** sql connection string omit....***

 $filename = "website_data_" . date('Ymd') . ".xls"; 
  header("Content-Type: application/vnd.ms-excel");
 header("Content-Disposition: attachment; filename=\"" . $filename . "\"");

  $flag = false; 
 $result = mysql_query("SELECT trandate,price FROM price") or die('Query failed!'); 
 while(false !== ($row = mysql_fetch_assoc($result))) { 
 if(!$flag) {
 // display field/column names as first row 
 echo implode("\t", array_keys($row)) . "\n"; 
 $flag = true; 
 } 
 echo implode("\t", array_values($row)) . "\n";
 } 

 ?>
 </body>
 </html>
EN

回答 4

Stack Overflow用户

发布于 2011-04-06 19:59:32

在客户机上输入以下内容后,excel消失错误。

解决此问题的最简单方法是插入以下注册表项。这将禁止通知:

代码语言:javascript
复制
[HKEY_CURRENT_USER\Software\Microsoft\Office\12.0\Excel\Security]
“ExtensionHardening”=dword:00000000

分步说明如下:

  1. 单击开始,单击运行,键入regedit.exe并按ENTER键。这将打开您的Registry
  2. Navigate到HKEY_CURRENT_USER\SOFTWARE\MICROSOFT\OFFICE\12.0\EXCEL\SECURITY
  3. Right在右窗口中单击并选择新建-> DWORD
  4. 在名称字段中,输入“ExtensionHardening”(没有表示数据具有值“0”的Registry
  5. Navigate

我建议上面的步骤来解决问题,尽管它是快速和肮脏的事实。

票数 2
EN

Stack Overflow用户

发布于 2011-02-20 18:52:22

您可以将数据保存在文件中,并提供简单的重定向

代码语言:javascript
复制
<?php ?>
<html>
<head>
<h1> this is heading will display when page load</h1>
<head>
<body>
<p> user inputs </p>
<?PHP 

 *** sql connection string omit....***

 $filename = "website_data_" . date('Ymd') . ".xls"; 
 $filedata = '';

  $flag = false; 
 $result = mysql_query("SELECT trandate,price FROM price") or die('Query failed!'); 
 while(false !== ($row = mysql_fetch_assoc($result))) { 
 if(!$flag) {
 // display field/column names as first row 
 $filedata .= implode("\t", array_keys($row)) . "\n"; 
 $flag = true; 
 } 
 $filedata .= implode("\t", array_values($row)) . "\n";
 } 

 file_put_contents($filename, $filedata);

 echo '<meta http-equiv="refresh" content="0;url=' . $filename . '"';

 ?>
 </body>
 </html>
票数 1
EN

Stack Overflow用户

发布于 2011-02-21 17:16:21

这里有一个简单的解决方案:

将PHP代码放在另一个名为"excel.php“的文件中,将以下代码添加到该文件的顶部:

代码语言:javascript
复制
<?php
    header('Content-type: application/ms-excel');
    header('Content-Disposition: attachment; filename=excel.xls');

然后添加一个从现有文件到此文件的链接:

代码语言:javascript
复制
<a href="excel.php">Download</a>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5056438

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档