在我的Android应用程序中,我需要将记录发送到我的“php服务器”,并将此记录的图像保存到另一个“文件服务器”。并且这两个工作都需要像交易一样整合在一起
我可以将所有数据(文本和图像)发送到“php服务器”。然后保存记录,然后将图像发送到“文件服务器”。但我的“php服务器”上有带宽限制。
另一种方法是将所有数据(文本和图像)发送到文件服务器(我的文件服务器支持php脚本),然后将文本发送到“php服务器”,之后当我获得成功结果将图像保存到磁盘。
我是新的PHP,我想问有没有更好的方法来做到这一点?
现在我正在使用这种方式
我目前在文件服务器中的代码是:
$data = array(
'tag' => "createProduct",
'token' => "$token",
'shop_uid' => $shop_uid,
'image1' => $image1_name,
'image2' => $image2_name,
'image3' => $image3_name,
'image4' => $image4_name,
'image5' => $image5_name,
'name' => $name,
'description' => $description
);
# Create a connection
$url = 'http://myhost.com/myproject/function.php';
$ch = curl_init($url);
# Form data string
$postString = http_build_query($data, '', '&');
# Setting our options
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
# Get the response
$response = curl_exec($ch);
curl_close($ch);
if ($response == null) {
// failed
echo "{\"result\":0,\"messageCode\":19}";
} else {
// save images
if ($image1 != "") storeProductImage($image1_name, $image1);
if ($image2 != "") storeProductImage($image2_name, $image2);
if ($image3 != "") storeProductImage($image3_name, $image3);
if ($image4 != "") storeProductImage($image4_name, $image4);
if ($image5 != "") storeProductImage($image5_name, $image5);
// send ok result to client
echo $response;
}