如何从一个域的图像上传到另一个域在同一服务器下的php


How to upload an image from a domain to another domain under same server by php?

我想将图像从文件夹www.abc.com/upload/abc.jpg移动到www.def.com/upload/abc.jpg。这里这两个网站有相同的面板godaddy,但他们的ftp细节不同。如何移动图像?

  <?php
   move_uploaded_file($_FILES["file"]["tmp_name"],
  "C:'inetpub'vhosts'def.com'upload''" . $_FILES["file"]["name"]);
 ?>

它不工作。但是当我使用ftp_put()功能时,它会起作用,这个功能需要ftp用户名和密码。我想移动没有FTP细节的图像。我怎样才能移动它,有可能吗?

试试这个解决方案:

# Source domain code..
$save_dir = 'C:'inetpub'vhosts'abc.com'upload'abc.jpg' ;# Temporary save file in your source domain..
$url = "http://www.def.com/copy_upload_file.php"; # destination domain URL
$ch = curl_init();
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible;)");
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true);
$post = array(
    "file"=> "@".$save_dir,
);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
$response = curl_exec($ch);

将此文件添加到您的另一个域..

# Destination domain file called as copy_upload_file.php
$path = 'C:'inetpub'vhosts'def.com'upload''; # Write full path here
if(isset($_FILES["file"]))
{
    if ($_FILES["file"]["error"] > 0)
    {
        echo "0";
    }
    else
    {
        if(is_uploaded_file($_FILES["file"]["tmp_name"]) && move_uploaded_file($_FILES["file"]["tmp_name"], $path . $_FILES["file"]["name"]))
        {
            echo "1";
        }
        else {
            echo "0";
        }
    }
}
else
{
    echo "0";
}
相关文章: