“文件名 062014.xlsx 未被识别为 OLE 文件”

2024-01-01

我正在开发一个处理 Excel 的复杂程序,因此我使用 PHPExcel 从浏览器搜索和编辑 Excel 文件。我的问题出在程序的编辑部分,所以我编写了一个基本程序来编辑现有的 Excel 页面。 PHPExcel 似乎无法将 Excel 中创建的文件识别为 Excel 文件。这是在我自己的服务器上通过我用 Excel 创建的 Excel 页面完成的。文件名是 062014.xlsx。在 HTML 方面,我将文本框命名为 C3、D3 和 E3,因此它们的名称很容易与 Excel 单元格(php $cell 变量的来源)相对应。我想要做的是获取 html 文本框中的文本,并使用 html 文本框中的数据重写 Excel 中相应的单元格。发布的是我的 html 和 php 的整个代码,如果有人能告诉我我的程序出了问题,我将不胜感激。

<html>
<head>


<form method="POST" action="lilrevisetest.php" id="excelform">

<input type="text" value="foo" name="C3" />
    <input type="text" value="foo" name="D3" />
    <input type="text" value="foo" name="E3" />
<button type="submit">Submit</button>
</form>


</body>
</html>




<body>
 <html>


<?php

include 'PHPExcel/IOFactory.php';
 $n=1;
 $x="C";
 $y=1;


 $file = "062014.xlsx";


  $inputFileType = PHPExcel_IOFactory::identify($file);
 $inputFileType = 'Excel5';
 $objReader = PHPExcel_IOFactory::createReader($inputFileType);
 $objReader->setReadDataOnly(false);

  $objPHPExcel = $objReader->load($file);

  $objWorksheet = $objPHPExcel->getActiveSheet();
  $fileObj = fopen("$file", "rt" );


   $y = 3; 
   $x= "C";

   for($n=1; $n<4; $n++){
    $cell = $x . $y; 

    echo $cell; 
    if (isset($_POST[$cell])){
    $string = ($_POST[$cell]);
       $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, $inputFileType);

      $objWorksheet ->setCellValue("$cell","$string");
      $objWriter->save($file);
 }
 echo "<td> <input type ='text' value= '$string' name = '$cell'/></td>";
     $x= ++$x;
}

?>

      </html>
   </body>

您正在尝试加载一个xlsx文件(OfficeOpenXML 格式)使用Excel5(BIFF 格式)阅读器。

$inputFileType = 'Excel5';
$objReader = PHPExcel_IOFactory::createReader($inputFileType);

您应该为您尝试加载的文件类型使用正确的阅读器,否则您会收到错误。

您已经使用过

$inputFileType = PHPExcel_IOFactory::identify($file);

识别文件类型和要使用的正确阅读器,那么为什么您要忽略这一点并自己手动(错误地)设置它呢?


此外

另一个问题可能是当您尝试保存文件时文件已经打开。

您正在加载$file (062014.xlsx)使用 PHPExcel 加载器,没问题。

由于某种未知的原因,您然后执行

$fileObj = fopen("$file", "rt" );

虽然你什么也没做$fileObj根本没有,但这样做会让它打开

当您尝试使用保存时$objWriter->save($file);,文件仍然保持打开状态,因此保存将失败(与文件名无关,只是文件处于打开状态)。

解决方案很简单,删除该行即可

$fileObj = fopen("$file", "rt" );
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

“文件名 062014.xlsx 未被识别为 OLE 文件” 的相关文章

  • 使用绝对定位时文本被破坏

    我有一个小挑战 我在 Stack Overflow 上没有找到任何解决方案 这就是我得到的 这就是我想要的 为了产生这个标题效果 我使用绝对位置 我什至不知道我的标题的宽度和高度 因此 使用此解决方案时 大文本会中断 My HTML div
  • 将数据库中的用户 ID 添加到 Codeigniter 中的会话数据中?

    我是 CodeIgniter 的新手 在从数据库添加用户 ID 用户登录后 到会话数据时遇到问题 这是我的代码问题 之前可能会在 SOF 上被问到 在付出了所有努力之后 我问这个 登录模型
  • HTML:如何强制链接在新选项卡而不是新窗口中打开[重复]

    这个问题在这里已经有答案了 I use target blank 在新选项卡中打开链接 但在 IE 中它会打开一个新窗口 这是完全合乎逻辑的 因为这就是 blank应该做的 我不知道如何target blank 在其他浏览器中的行为 有什么
  • Yii2 中 init() 和 __construct() 方法有什么区别

    init 方法 public function init construct method public function construct 那么 它们之间有什么区别 应该使用哪一个呢 init 是从以下对象扩展的任何对象的方法yii b
  • 在 null laravel 上调用成员函数 save()

    大家好 我正在使用 laravel 5 多态关系将数据保存在数据库中 但我遇到了一些问题 当我尝试将数据保存在数据库中时 它会抛出此错误 对 null 调用成员函数 save 我不知道为什么我会遇到这个错误 我正在关注多态关系的本教程在 L
  • 如何在 Bootstrap 3 的导航栏中添加带有图标的搜索框?

    我正在使用新的 Twitter Bootstrap 3 并尝试放置一个像这样的搜索框 如下 在顶部导航栏中 在 Bootstrap 2 中 可以这样完成
  • 重新排列数组键 php [重复]

    这个问题在这里已经有答案了 我有这个数组 Array 15 gt 13 1 16 gt Mark one answer 19 gt You see a car on the hard shoulder of a motorway with
  • 为什么我的反应路由器链接将我带到页面中间?

    我的网站上有很多链接 但只有一个可以执行此操作 它没有将我带到导航栏的顶部 而是转到内容的中间 知道为什么会这样吗 这是一个页面 其中有一个 map经历一些JSON 这是渲染div页面下方的文本元素 如果重要的话 这是一些可能相关的代码 路
  • 选取散列第 N 个元素的最快方法

    我有一个大哈希表 带有字符串索引的数组 并正在寻找一个函数quickly从中选取第一个 理想情况下也是第 N 个 元素 array shift and reset 对于我的需求来说太慢了 UPDATE 我也不是在寻找基于引用的解决方案 该函
  • 如何解决 Laravel 8 UI 分页问题?

    我在尝试最近发布的 laravel 8 时遇到了问题 我试图找出变化是什么以及它是如何工作的 当我这样做时 我遇到了分页 laravel 8 UI 变得混乱的问题 不知何故它发生了 有人可以帮助我吗 或者经历过同样的事情 像这样我在 lar
  • 我怎样才能让这个脚本在 WordPress 上运行?

    我有这个脚本 document ready function text1 click function this hide 代码html div class div1 p class text1 text to appear when th
  • 更改API数据输出的布局

    我是 API 集成和 PHP 的新手 我最近将 VIN 解码器集成到我的应用程序中 在输入框中输入车辆的 VIN 选择提交 然后就会显示 API 数据库中有关该车辆的所有信息 数据存储为关联数组 其中包含类别及其相应元素 例如 对于 VIN
  • CSS 显示无不工作

    media screen and min width 900px and max width 1215px menu display none 这不起作用 div 仍然可见 但是 如果我将 div 更改为 div class menu 代替
  • 如何使跨度标签不可删除?

    我正在尝试使 contenteditable div 内的跨度标记不可删除 div Editable span Read Only span div 只读范围确实是只读的 但我可以通过单击删除键来删除整个范围 有没有一种属性方法可以告诉sp
  • 显式删除会话cookie会产生什么影响?

    我使用 php session 来维护用户的会话 Session 在登录后创建 在注销或超时后销毁 我需要管理面板中的一个选项来强制注销任何用户 如果他在网站上处于活动状态 我怎样才能做到这一点 我正在考虑删除临时会话文件 这应该有效地破坏
  • 合并 url 中的 2 个输入值

    我有这样的形式
  • Service Worker 与 Shared Worker

    Service Worker 和 Shared Worker 有什么区别 我什么时候应该使用 Service Worker 而不是 Shared Worker 反之亦然 Service Worker 具有共享 Worker 之外的附加功能
  • Facebook 点赞按钮消失

    我的网站中的 Facebook Like 按钮出现问题 添加此代码 由 facebook 提供 按钮在创建时正确显示在任何页面中
  • 如何在数据列表 HTML PHP 中设置选择

    您好我想知道是否有一种方法可以在数据列表中设置选定的值 我想要这样的东西
  • 如何使用配置文件 (.ebextensions) 在 AWS Elastic Beanstalk 上安装 PHP IMAP 扩展?

    有谁知道如何使用配置文件 ebextensions 在 AWS Elastic Beanstalk 上安装和启用 PHP IMAP 扩展 我使用的是 64 位 Amazon Linux 2017 03 v2 4 0 运行 PHP 7 0 1

随机推荐

  • 在 Visual Studio 2019 中更改 C# 版本

    我正在使用 Visual Studio 2019 我正在尝试更改我的 C 版本 我这样做的原因是我使用的构建服务器使用旧版本的 VS MSBuild 来构建和部署代码 这是我无法控制的 因此我需要使用 C 5 在 Visual Studio
  • 在 Pandas 中使用窗口进行动态离群值检测

    我想实现离群值检测 它将使用一个窗口来检查下一个元素是否是离群值 假设我们在 pd Series 上使用长度为 3 的窗口 如下所示 0 1 2 3 4 我会计算 0 1 2 上的中位数和疯狂值 或平均值和标准差 并检查 3 是否为异常值
  • 为什么非聚集索引扫描比聚集索引扫描更快?

    据我所知 堆表是没有聚集索引的表 没有物理顺序 我有一个包含 120k 行的堆表 扫描 我正在使用此选择 SELECT id FROM scan 如果我为 id 列创建非聚集索引 我得到223 物理读取 如果我删除非聚集索引并更改表以使 i
  • JSF 自定义复合组件与自定义经典组件之间有什么区别

    我想构建一个自定义 JSF 组件 现在我读了一些oracle的文档并看到了一些代码示例 问题是我有点困惑 似乎有两种方法可以使用 JSF 2 0 构建自定义组件 据我了解 自 JSF 2 0 以来 我可以使用这些复合组件来构建我自己的组件
  • OpenGL 中的帧缓冲区对象和像素缓冲区对象有什么区别?

    FBO 和 PBO 有什么区别 我应该使用哪一个来进行离屏渲染 FBO 和 PBO 有什么区别 更好的问题是它们有何相似之处 他们唯一相似的就是他们names A 帧缓冲对象 http www opengl org wiki Framebu
  • vim自动跳到下一行

    vim 中的一个令人沮丧的行为是 当我向右或向左移动光标 分别为 l 或 h 并且我位于行的末尾或开头时 我的光标不会移动到下一行的第一列或上一行的最后一列 有办法改变这种行为吗 您可以使用whichwrap设置使h and l环绕各行的开
  • 使用带有依赖项的 useEffect hook 时何时触发清理函数?

    我正在使用 useEffect 来显示 UI 加载 但仅在 250 毫秒后 它有效 但我真的不明白为什么 特别是 useEffect 如何以及何时调用返回的函数 清除超时 嗯 我不确定这是否完美 有时应该出现 正在加载 消息 但事实并非如此
  • 当使用多个 WHEN MATCHED 语句时,它们是全部执行,还是只执行一个?

    如果 MERGE 语句中有多个 WHEN MATCHED 语句 如果它们为真 它们是否都会执行 我的例子 DECLARE X bit NULL skipping the MERGE statement straight to WHEN MA
  • 分析 Ruby 程序调用的 C 共享库

    我有一个用Ruby和C编写的程序 C部分是一个共享库 它是Ruby程序的扩展 我想使用 gprof 分析我编写的 C 共享库 我像这样编译共享库 gcc I I usr lib ruby 1 8 i486 linux I usr lib r
  • 弱引用的好处

    有人可以解释一下 C 中不同类型引用的主要好处吗 弱引用 软参考 虚拟引用 强有力的参考 我们有一个消耗大量内存的应用程序 我们正在尝试确定这是否是一个需要关注的领域 我相信软引用和幻像引用来自 Java 长弱引用 将 true 传递给 C
  • python中是否可以同时运行多个asyncio?

    根据我得到的解决方案 在 python 中使用 asyncio 运行多个套接字 https stackoverflow com questions 62571622 running multiple sockets using asynci
  • 将自定义表单参数传递给表单集

    我定义了以下表格 class MyForm ModelForm def init self readOnly False args kwargs super MyForm self init args kwrds if readOnly D
  • mod_rewrite 传递变量

    我有以下 mod rewrite 规则 RewriteRule search php action procedure procedureName 1 这可以很好地将 blabla 之类的内容重定向到 search php action p
  • 就地应用于满足条件的 pandas 数据框的列

    考虑以下 pandas 数据框 df pd DataFrame t 1 2 3 x1 4 5 6 x2 7 8 9 gt gt gt print df t x1 x2 0 1 4 7 1 2 5 8 2 3 6 9 我想对名称包含字符 x
  • iOS 13 对 UISearchBar 色调的更改,无法达到相同的结果

    我一整天都在尝试 试图弄清楚如何让我的搜索栏在 iOS13 中显示与 iOS 12 11 中显示的相同 所以添加搜索栏的方式就是简单的新建一个UISearchController var searchController new UISea
  • 什么时候使用 Java 的 @Override 注解?为什么?

    Locked 这个问题及其答案是locked help locked posts因为这个问题是题外话 但却具有历史意义 目前不接受新的答案或互动 使用 Java 的最佳实践是什么 Override注释以及为什么 用以下标记来标记每个被重写的
  • 基于分布式 JMS 的日志记录.. 表现平平?

    在我们精美的 ESB 中 每个请求的日志记录都是通过基于 JMS 日志记录的通用基础设施完成的 简而言之 发生的事情如下 服务获取请求服务 在 LogData 中准备一些数据 对象服务调用数据库 LogData 对象中捕获数据库交互所花费的
  • python中有COMMIT模拟用于写入文件吗?

    我有一个打开的文件可供写入 并且有一个运行了数天的进程 在相对随机的时刻将某些内容写入文件中 我的理解是 直到我执行 file close 之前 有可能没有任何内容真正保存到磁盘上 真的吗 如果主进程尚未完成时系统崩溃怎么办 有没有一种方法
  • 无法调用不带参数的类型的初始值设定项 - Swift

    我正在从 Objective C 转向 Swift 我想做的只是创建一个类的实例 以便我可以访问该类的属性 var myClassInstance MyClass print length is myClassInstance variab
  • “文件名 062014.xlsx 未被识别为 OLE 文件”

    我正在开发一个处理 Excel 的复杂程序 因此我使用 PHPExcel 从浏览器搜索和编辑 Excel 文件 我的问题出在程序的编辑部分 所以我编写了一个基本程序来编辑现有的 Excel 页面 PHPExcel 似乎无法将 Excel 中