繁体   English   中英

为什么我的表单没有提交?

[英]Why isn't my form being submitted?

我有一个简单的 HTML 表格,因此:

<html>
<head></head>
<body>
    <form action="upload_file.php" method="post" enctype="multipart/form-data">
      <input name="filesToUpload" id="filesToUpload" type="file" />
      <input type="submit" value="Upload File" />
    </form>
</body>
</html>

当用户单击提交时,我希望通过 upload_file.php 脚本返回结果。 但是在 mac 上的 FF 4.01 上,绝对没有任何反应。 地址栏中的 URL 保持不变,并且我的 php 脚本不会在服务器上被调用。 如果我将 enctype 更改为“multipart/form-data”以外的内容,或者如果我将方法从“post”更改为,我可以让它提交表单。

我不知道发生了什么事。 它是FF / Mac错误,还是我正在做的事情。

FWIW,这是 PHP 脚本。 它几乎是从W3schools PHP 上传教程中逐字窃取的:

<?php
if ($_FILES["filesToUpload"]["error"] > 0)
  {
  echo "Error: " . $_FILES["filesToUpload"]["error"] . "<br />";
  }
else
  {
  echo "Upload: " . $_FILES["filesToUpload"]["name"] . "<br />";
  echo "Type: " . $_FILES["filesToUpload"]["type"] . "<br />";
  echo "Size: " . ($_FILES["filesToUpload"]["size"] / 1024) . " Kb<br />";
  }
?> 

哦,好吧,我似乎已经解决了。 我创建了一些虚拟文件来测试我将用来检查文件名有效性的脚本。 但我只是通过去终端并做

touch testfile.txt testfile2.txt testfile3.txt

所以文件都是零字节。 这似乎不适用于mac上的FF。 但是,它适用于 chrome。 在 PC 上,我选择了真实文件,因为我不知道与 touch 命令等效的 windows,所以这就是 Firefox 在那里工作的原因。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM