Home >Backend Development >PHP Tutorial >PHP文件上传问题

PHP文件上传问题

WBOY
WBOYOriginal
2016-06-20 12:31:33816browse

做了一个简单的文件上传,但是运行后出错
简化代码后发现问题在文件传输到PHP时数据没有传过去或者后面没有收到
代码如下:

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>Title</title></head><body>    <h1>        时间戳:        <?php        echo time();        ?>    </h1>    <form action="upload.php" method="post" enctype="multipart/form-data">        <p>上传</p>        <p>            <input type="file" name="img">        </p>        <input type="submit" value="OK">    </form></body></html>


upload.php

<?phpecho"<pre class="brush:php;toolbar:false">";print_r($_FILES);echo"
";

最终效果:


回复讨论(解决方案)

检查临时文件,上传配置,看看对否

1、确认 php.ini 中 file_uploads = On
2、确认 php.ini 中 upload_max_filesize 
再 print_r($_POST);

1、确认 php.ini 中 file_uploads = On
2、确认 php.ini 中 upload_max_filesize 
再 print_r($_POST);



还要确保 upload_max_filesize 足够大。

我测试用的图片很小的


1、确认 php.ini 中 file_uploads = On
2、确认 php.ini 中 upload_max_filesize 
再 print_r($_POST);



还要确保 upload_max_filesize 足够大。


这3个数分别是32m,32m,128m,而且我上传的文件足够小的。

1、确认 php.ini 中 file_uploads = On
2、确认 php.ini 中 upload_max_filesize 
再 print_r($_POST);



print_r($_POST)出的结果也是array()。

你用的什么服务器?不会是在 PhpStorm 中调试的吧?

你用的什么服务器?不会是在 PhpStorm 中调试的吧?


是PHPstorm啊,2016最新版的
是它的问题吗?

你用的什么服务器?不会是在 PhpStorm 中调试的吧?


mamp+PHPstorm,php版本是5.5.23

对!新版 PHPstorm 因盗版的原因,不支持 POST 方式

对!新版 PHPstorm 因盗版的原因,不支持 POST 方式



那我应该怎么办?
换用老版本?

你用正式的 web 服务器进行调试即可

你用正式的 web 服务器进行调试即可


我应该怎么做?


你用正式的 web 服务器进行调试即可


我应该怎么做?
用浏览器



你用正式的 web 服务器进行调试即可


我应该怎么做?
用浏览器

我想知道具体怎么用浏览器
其实phpstorm最终也是用火狐打开的,是地址不对吗?应该该成什么?

安装 apache、nginx、IIS 之一,并配置 php 支持
或下载集成环境套件

安装 apache、nginx、IIS 之一,并配置 php 支持
或下载集成环境套件


我安装了apache
但是不会配置

httpd.conf 中加上
PHPIniDir "/AMP/php54"
LoadFile "/AMP/php54/php5ts.dll"
LoadModule php5_module "/AMP/php54/php5apache2_2.dll"
addtype application/x-httpd-php .php

执行修改路径名

httpd.conf 中加上
PHPIniDir "/AMP/php54"
LoadFile "/AMP/php54/php5ts.dll"
LoadModule php5_module "/AMP/php54/php5apache2_2.dll"
addtype application/x-httpd-php .php

执行修改路径名



清提示一下每一行都是什么路径?
因为我的php版本好像不一样,而且路径也不尽相同。

你实际文件的路径

httpd.conf 中加上
PHPIniDir "/AMP/php54"
LoadFile "/AMP/php54/php5ts.dll"
LoadModule php5_module "/AMP/php54/php5apache2_2.dll"
addtype application/x-httpd-php .php

执行修改路径名



也就是说在apache的文件夹下,php文件夹下,寻找文件http.conf
然后在最后添加如下代码
PHPIniDir "/AMP/php54"
LoadFile "/AMP/php54/php5ts.dll"
LoadModule php5_module "/AMP/php54/php5apache2_2.dll"
addtype application/x-httpd-php .php

其中第一行是什么的地址???
第二行是LoadFile+文件php5ts.dll的地址
第三行是LoadModule php5_module +文件php5apache2_2.dll的地址
第四行是什么???

搞得好麻烦啊  直接下个wamp 都是直接配置好的  用谷歌浏览器应该就没问题了

搞得好麻烦啊  直接下个wamp 都是直接配置好的  用谷歌浏览器应该就没问题了


可是wamp里面不带编辑器啊


搞得好麻烦啊  直接下个wamp 都是直接配置好的  用谷歌浏览器应该就没问题了


可是wamp里面不带编辑器啊 编辑器???自己去下个zend studio啥 的不就行了

没有人知道怎么把phpstorm和apache连接起来了吗?
最后一天,明天结帖

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn