使用PHP将文件上载到777文件夹

使用PHP将文件上载到777文件夹,php,file-upload,amazon-ec2,777,Php,File Upload,Amazon Ec2,777,我正在从事一个学校项目,该项目涉及一个超市系统,我有一台商店PC(本地主机)和一台HQ服务器(托管在Amazon EC2上)。其中一个要求是,Shop PC将生成一个事务文件(我有一个生成该文件的按钮),该文本文件需要发送到HQ服务器。我在HQ服务器上创建了一个具有777权限的文件夹。我试图简单地使用PHP的copy功能将文件发送/上传到该文件夹,但这不起作用。关于我如何做到这一点有什么线索吗?我没有在亚马逊上安装ftp,不能按照要求安装 此外,我无法在HQ admim上创建上载表单(多部分表单

我正在从事一个学校项目,该项目涉及一个超市系统,我有一台商店PC(本地主机)和一台HQ服务器(托管在Amazon EC2上)。其中一个要求是,Shop PC将生成一个事务文件(我有一个生成该文件的按钮),该文本文件需要发送到HQ服务器。我在HQ服务器上创建了一个具有777权限的文件夹。我试图简单地使用PHP的copy功能将文件发送/上传到该文件夹,但这不起作用。关于我如何做到这一点有什么线索吗?我没有在亚马逊上安装ftp,不能按照要求安装

此外,我无法在HQ admim上创建上载表单(多部分表单?)来上载文件,因为店员无法访问HQ服务器页面

需要上载文件的文件夹的地址为:

"site address"/uploads
我以以下方式创建事务文件:

$ourFileName = "transaction.txt";
    $ourFileHandle = fopen($ourFileName, 'w') or die("can't open file");
    //fwrite($fh, $stringData);

    $sql = mysql_query("the query");

    while($row=mysql_fetch_array($sql)){
        $stringData = "data";
        fwrite($ourFileHandle, $stringData);
    }

    fclose($ourFileHandle);
这个文件是在shop PC上创建的,我想将它发送到HQ服务器,在那里可以解析并添加到HQ数据库。要将文件发送到HQ服务器中的uploads文件夹,我遵循上面的代码:

$filename = "news.txt";
    $newfile = "siteaddress/uploads/" . $filename;
    if(copy($ourFileName, $newfile)) 
    {
    print("<h3> UPLOAD SUCCESSFUL!</h3>");
    } 
    else
    {
    print("<h3>ERROR UPLOADING FILE!</h3>");
    }
$filename=“news.txt”;
$newfile=“siteaddress/uploads/”$文件名;
如果(复制($ourFileName,$newfile))
{
打印(“上传成功!”);
} 
其他的
{
打印(“上传文件时出错!”);
}
在讨论后编辑:

HQ服务器有php。事实上,它在parse_transaction.php中定义了一个文件解析器,其开头如下:

<?php
include "../storescripts/connect_to_mysql_HQ.php"; 
mysql_query($sql);
mysql_query($sql2);
mysql_query($sql3);

$filename= mysql_real_escape_string($_FILES["file"]["tmp_name"]);

$lines = file($filename); // slurp file and split into an array by lines

文件传输时是否使用了错误的写入/读取/执行属性

如果文件未被传输,是否检查了php日志错误

如果您使用的是copy,那么我假设您已经挂载了分区,因此您可以直接访问HQ服务器上的文件,如果没有,您可以尝试设置php以接收文件,请查看以下内容:

http://php.net/manual/en/features.file-upload.post-method.php

如果服务器上没有php,如何访问其文件?

在Shop PC中生成文件,并将其存储在HQ server可以访问(读取)的位置

应在HQ Server中使用PHP命令
copy
,以从商店PC获取文件

copy('http://somedomain.com/transaction.txt', '/tmp/transaction.txt');

请注意,在
php.ini

中,您需要
allow\u url\u fopen
必须是
=on
,文件根本不会被传输。看到前面的评论,我想我无法使用copy,因为我正在尝试将文件从本地服务器复制到远程服务器。另外,如果我创建了一个表单,那么上传将需要手动完成?事务文件将使用php编写的解析器进行解析,然后详细信息将用于更新该商店的数据库。如果您想这样做,您可以使用前面提到的上传后方法,将文件从一个php服务器上传到另一个php服务器,您可能希望查看cURL,并在“clientside”服务器上的php.ini中启用它,查看“4.3文件上传帖子”,这听起来很完美!我在HQ服务器上也有一个表单来上传交易文件。我可以直接寄到那个表格吗?那就解决问题了!你能详细介绍一下如何使用CURL语句吗?是的,你可以直接发布它们,这里有两个很好的入门参考资料:这将涉及总部管理员手动检查每台商店PC,如果它是否有事务文件。不是可扩展的解决方案在生成文件后,您的商店PC可能会向HQ Server发送HTTP请求,因此我们可以确保存在事务文件。