9

私は2つのサーバーを持っています。1つは私のWebサイトにあり、もう1つはストレージ用です。誰かがファイルをストレージサーバーにアップロードできるページを作成しようとしています。フォームの投稿を使用してそこにファイルを取得したいと考えています。これをトラブルシューティングするための非常に簡単なコードを作成しましたが、少し問題があります。アクションを同じサーバーに保存する.phpに変更すると正常に機能しますが、ストレージサーバーに変更すると、アップロードに失敗し、アップロードに失敗したことを示す「else」エコーが表示されます。

Webサーバー上のHTML:

<form action="http://storageServer/upload_file.php" method="post"
enctype="multipart/form-data">
<label for="file">Filename:</label>
<input type="file" name="file" id="file" /> 
<br />
<input type="submit" name="submit" value="Submit" />
</form>

ストレージサーバー上のPHP:

<?php
$folder = "files/";
$path = $folder . basename( $_FILES['file']['name']); 
if(move_uploaded_file($_FILES['file']['tmp_name'], $path)) {
echo "The file ".  basename( $_FILES['file']['name']). " has been uploaded";
} else{
echo "There was an error uploading the file, please try again!";
}
?>

.phpは、「files」フォルダーとともにhtmlフォルダーにあります。

あなたが見ることができるサーバーにファイルが届かない理由は何ですか?

4

1 に答える 1

5

このトピックはあなたの質問に答えます

提案されているように、CURLを使用できます。

$ch = curl_init("http://www.remotepage.com/upload.php"); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, array('fileupload' => '@'.$_FILES['theFile']['tmp_name'])); 
echo curl_exec($ch);
于 2012-09-02T01:25:28.383 に答える