将文件上传到" assets"文件夹通过move_uploaded_file()

时间:2016-12-02 10:23:20

标签: php rightnow-crm oracle-service-cloud

在Service Cloud(FKA RightNow)客户门户中,不是"资产"文件夹可写?

我试图将文件上传到" assets"中的子文件夹。文件夹,但我似乎遇到了权限问题。我使用的代码是:

$file_name = "File_".time().".txt";
if(move_uploaded_file($_FILES['upload']['tmp_name'], HTMLROOT . '/euf/assets/uploads/text/'.$file_name))
{
    header("Location: /app/read_file/file_name/".$file_name);
    exit;
}

这是一个错误,指出:

  

对move_uploaded_file的访问被拒绝,因为它试图访问......中的受限文件夹

是否无法将上传的文件保存到"资产"通过PHP的子文件夹?

编辑:

目的地似乎是正确的,就好像我使用:

echo HTMLROOT . '/euf/assets/uploads/text/'.$file_name

打印:

/vhosts/sitename/euf/assets/upload/text/File_1480674311.txt

所以正在引用正确的文件路径但是框架不允许我将其保存在那里。

更新

用例是通过CP,一个人将上传CSV / TXT文件。此文件将包含联系信息(名称,电子邮件等),然后将在稍后阶段读取该信息以在OSvC中创建联系人。这将是一个反复出现的过程,可能是一个月两次或三次。

由于在上传时不会读取文件,因此将文件存储到某个位置是理想的解决方案。

1 个答案:

答案 0 :(得分:1)

正确,文件夹受WebDAV和文件系统强制执行的用户权限保护。并且,资产文件夹不是用于上载的文件存储机制,因为您正在使用此容量。

是否有理由将文件放在资产中而不是将其附加到事件或联系对象(这些对象是在客户门户中运行的人员的上下文中)?

如果您希望在客户门户中构建某种内容管理,那么我建议使用单独的产品进行文件存储,提供API,您可以在其中管理更细粒度的文件,如Oracle云数据存储,然后,您可以在CP中提供这些文件。