通过OpenStack使用cURL和PHP在对象存储服务中存储文件

通过OpenStack使用cURL和PHP在对象存储服务中存储文件,php,curl,openstack,Php,Curl,Openstack,因此,基本上我使用AngularJS将一个文件上传到Web服务器,然后尝试将其存储在OpenStack中我的public对象存储中 现在,我尝试将文件发送到Web服务器,更具体地说,发送到名为uploads的本地文件夹 然而,即使curl_exec上没有执行错误(我不知道如何获取响应代码…),它似乎根本没有被上传 这是我的代码供参考:: (我是PHP新手,请饶了我吧!) include_once "config.php"; $target_dir = "./upload/"; $name

因此,基本上我使用AngularJS将一个文件上传到Web服务器,然后尝试将其存储在OpenStack中我的public对象存储中

现在,我尝试将文件发送到Web服务器,更具体地说,发送到名为uploads的本地文件夹

然而,即使curl_exec上没有执行错误(我不知道如何获取响应代码…),它似乎根本没有被上传

这是我的代码供参考:: (我是PHP新手,请饶了我吧!)

include_once "config.php";    
$target_dir = "./upload/";
$name = $_POST['name'];
echo "I am here";
print_r($_FILES);
$target_file = $target_dir . basename($_FILES["file"]["name"]);
print_r($target_file);
if(move_uploaded_file($_FILES["file"]["tmp_name"], $target_file)){
    echo "Upload";
}
else{
    echo "couldn't upload!";
}
print_r($file_name_with_full_path); 
    //write code for saving to object store 

$target_url = 'http://myobjectstore' + $name;
if (function_exists('curl_file_create')) { // php 5.6+   
    $cFile = curl_file_create($target_file); 
} 
else { //   
    $cFile = '@' . realpath($target_file); 
} 
$data = array('file_contents'=> $cFile); 
$ch = curl_init($target_url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
curl_setopt($ch, CURLOPT_POSTFIELDS,http_build_query($data));

$result=curl_exec ($ch);
if($result == true){
    echo "File posted";
}
else{
    echo "ERROR: " . curl_error($ch);
}