有没有可靠的方法来存储服务器1中的记录和服务器2中的记录图像

时间:2016-05-12 14:17:32

标签: php mysql

在我的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;

}

0 个答案:

没有答案