未收到要导入的数据。没有提交文件名,或者文件大小超过了 PHP 配置允许的最大大小

Posted

技术标签:

【中文标题】未收到要导入的数据。没有提交文件名,或者文件大小超过了 PHP 配置允许的最大大小【英文标题】:No data was received to import. Either no file name was submitted, or the file size exceeded the maximum size permitted by your PHP configuration 【发布时间】:2014-06-20 12:47:25 【问题描述】:

我尝试使用 phpmyadmin 将数据导入 mysql 表,文件大小仅为 11 k。 我收到以下消息并增加了 upload_max_filesize、memory_limit 和 post_max_size ,但它仍然不起作用。

它可以在我的 Ubuntu 机器上运行,但不能在 Windows 机器上运行。 有什么方法可以查看 IIS 是否限制文件上传或我可以检查或配置的其他内容?

没有收到要导入的数据。没有提交文件名,或者文件大小超过了您的 PHP 配置允许的最大大小

【问题讨论】:

【参考方案1】:

我在 Ubuntu 14.10 上遇到了类似的问题。我分两步解决了,但很可能一步就解决了。

如果您更改 /etc/phpmyadmin 中的 config.inc.php 文件,那么您将能够访问您自己选择的上传目录。但是,这些文件不会显示在“从 Web 服务器上传目录中选择”选项下。为此,您必须更改文件夹 /etc/phpmyadmin 中的 apache.conf 文件,并将您的文件夹添加到值“php_admin_value open_basedir”。

在我的电脑上之前是这样的:

php_admin_value open_basedir /usr/share/phpmyadmin/:/etc/phpmyadmin/:/var/lib/phpmyadmin/:/usr/share/php/php-gettext/:/usr/share/javascript/:/usr/share/php/tcpdf /

然后是这样写的:

php_admin_value open_basedir /usr/share/phpmyadmin/:/etc/phpmyadmin/:/var/lib/phpmyadmin/:/usr/share/php/php-gettext/:/usr/share/javascript/:/usr/share/php/tcpdf /:/home/user/dumps/phpmyadmin/uploaddir

这将使文件显示在“网络服务器目录”选项下。但是,如果您尝试上传文件,您可能会发现错误“上传的文件无法移动,因为服务器启用了 open_basedir,但无法访问 /var/lib/phpmyadmin/tmp 目录(用于临时文件)。

要解决这个问题,您必须修复相关目录的权限,您可以这样做:

sudo chmod 777 tmp/

进行更改后,您将能够以任何您想要的方式上传文件。

换句话说问题的解决方案 - 假设您已经允许 PHP 处理大尺寸,就像我一样 - 是确保您授予所有权限 /var/lib/phpmyadmin/tmp 目录。

感谢phpMyAdmin "The directory you set for upload work cannot be reached" 线程上的Ashwin BG Ranore 让人们知道如果想要选择一个uploadDir,就必须更改php_admin_value open_basedir。

原始发帖人的问题是在 Windows 计算机上,所以这个解决方案对他没有帮助,但会帮助那些在 Linux 计算机上遇到类似问题的人。

【讨论】:

【参考方案2】:

在浏览器中转到 http://localhost/dashboard/ 并点击 PHPinfo 在 phpinfo 中找到 php.ini 的位置并进行配置 upload_max_filesize= memory_limit= post_max_size 然后重新启动你的 MySQL 和 apache。 here is image of the dashboard of phpmyadmin.

【讨论】:

【参考方案3】:

我在 phpmyadmin 下尝试恢复小备份时看到了类似的问题,结果是文件编码问题。

我之前通过在 Notepad++ 中打开备份文件,然后在“编码”菜单下选择“转换为 UTF-8”并重新保存来解决此问题。然后 phpmyadmin 愉快地接受了备份文件,没有进行任何其他更改。

【讨论】:

【参考方案4】:

打开一个 php.ini 文件。并找到 upload_max_filesize 文本。

upload_max_filesize = 256M

请阅读本教程:The maximum size permitted by your PHP configuration

【讨论】:

以上是关于未收到要导入的数据。没有提交文件名,或者文件大小超过了 PHP 配置允许的最大大小的主要内容,如果未能解决你的问题,请参考以下文章

Ubuntu Phpmyadmin - 没有收到要导入的数据。要么没有提交文件名,

如何在 phpmyadmin 中导入表?我收到文件大小错误

将 Sakila 数据库导入 PhpMyAdmin

1000mb 数据库文件未完全上传

无法在 Mac OSX 的 phpmyadmin 中导入 sql 文件

Sails.js 表单帖子未提交任何数据