2010-04-11 56 views
0

让我开始说PHP不是我的特长,我通常不愿意尝试使用它,因为这样的问题。该代码在我的本地计算机上在MAMP和我的服务器上工作正常,但不在客户端服务器上:'(

那么我想要做什么,以及 - 从Flash中将图像保存到服务器上,对吗?!

我使用的是本网站上描述的方法:http://designreviver.com/tutorials/actionscript-3-jpeg-encoder-revealed-saving-images-from-flash/,但做了一个小改动,以便不用回显jpg导致浏览器在本地下载它,而是执行fwrite和fclose来保存它给服务器

这是我的PHP:

我已经在我的客户端服务器上运行了一个phpinfo()并且它正在运行5.2.2我的主机正在运行5.2.11我不知道这9个次要版本中是否有很多可以改变?

我也在这里读到了另一个问题,其中建议使用sure always_populate_raw_post_data设置为ON,但在我测试的所有服务器环境中设置为OFF。我正在使用file_get_contents ('php:// input'),我尝试过但未能处理图像。

任何帮助都会被感激地收到,我很高兴发布AS3,但它与我上面链接并在本地工作的示例完全相同。据我所知问题在于PHP。

干杯。

+0

究竟什么不行?文件没有被上传,或者它的名字没有被传送? – 2010-04-11 21:12:52

+0

只是一个愚蠢的问题:你检查了文件的权限? – Eineki 2010-04-11 21:14:56

+0

感谢您的回复 @Pekka我可以看到被调用的php文件,但文件不会被更新/覆盖 @Eineki是的,我有775设置在所有我想写的文件夹/文件上 – jolyonruss 2010-04-12 09:19:17

回答

0

是否有任何理由使用HTTP_RAW_POST_DATA?如果Flash通过POST方法发送文件,则使用$_FILES阵列将会容易得多。不需要fopen/fwrite,因为这个文件已经被PHP绑定到临时目录。您只需使用[move_uploaded_file()][1]即可将其放置在服务器上的任何位置。

+0

感谢马克,我使用它的原因是因为这就是我发现的例子,因为它在本地工作我没有理由怀疑它的能力 使用$ _FILES我可以传递一个参数move_uploaded_file设置名称在文件移动? – jolyonruss 2010-04-13 09:44:45

+0

这正是它的工作原理。 'move_uploaded_file(source,destination)',在你的情况下它会是'move_uploaded_file($ _ FILES ['nameofuploadfield'] ['tmp_name']'/some/directory/on/the/server/name_of_file.html')' – 2010-04-13 17:16:33

+0

我很漂亮帷幕我已经找出问题所在,客户端主机是一个蹩脚的共享事务,并且php.ini中的“max_input_time”设置为-1 – jolyonruss 2010-04-15 09:08:47

相关问题