2012-09-02 9 views
7

Mam dwa serwery, jeden z moją witryną, a drugi do przechowywania. Próbuję mieć stronę, na której ktoś może przesłać plik na serwer pamięci masowej, mam nadzieję, że użyję formularza, aby go tam pobrać. Napisałem bardzo prosty kod do rozwiązania tego problemu i mam trochę problemów. Działa to dobrze, jeśli zmienię akcję na .php, która zapisuje ją na tym samym serwerze, ale kiedy zmienię ją na mój serwer pamięci masowej, nie ładuje się i pokazuje mi echo "else", którego nie udało się załadować.Zdalne przesyłanie plików serwera za pomocą PHP

HTML na mój serwer WWW:

<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 na mój serwer pamięci masowej:

<?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 jest w folderze html z "Files" folder.

Jakiś powód, dla którego plik nie wyświetla się na serwerze?

Odpowiedz

3

This topic answers your question

Jak sugeruje, można spróbować to:

$ch = curl_init("http://www.remotepage.com/upload.php"); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($ch, CURLOPT_POST, true); 
curl_setopt($ch, CUROPT_POSTFIELDS, array('fileupload' => '@'.$_FILES['theFile' ['tmp_name'])); 
echo curl_exec($ch); 
+0

starałem się to zrobić bez cURL. Czy to możliwe w taki sposób, w jaki nad tym pracowałem, czy też będę musiał dodać coś takiego jak CURL do miksu? – Milksnake12

+0

Być może możesz przetworzyć żądanie na serwerze, do którego przesyłasz dane? –

+0

@ Milksnake12 cURL ma tendencję do pakowania w większość instalacji PHP. –

Powiązane problemy