Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
FTP-Client mit PHP: Upload Problem [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
FTP-Client mit PHP: Upload Problem


 
fl4sh
28-12-2005, 03:27 
 
Hallo,

ich programmiere zu Zeit ein Script, dass einen auf einen FTP Server zugreifen lässt.
Bis jetzt funktioniert auch alles, ich stehe nun aber vor folgendem Problem:
Und zwar möchte ich zum Upload einer Datei ftp_put benutzen
[int ftp_put ( int ftp_stream, string remote_file, string local_file, int mode )]

Mein Problem besteht jetzt darin, die Lokale Datei, die hochgeladen werden soll zu "lokalisieren".
ich dachte mir, den pfad könnte ich mit
<input type=file name=datei>ermitteln. Schicke ich das Formular aber ab, so steht in der Adressleiste (ich möchte gerne method=get benutzen, da ich es die ganze zeit verwendet habe, z.B. um dateien zu löschen "?delete=file"...) nur soetwas blabla.php?datei=test.exe
Damit kann ich aber nichts anfangen, ich brauche ja einen Pfad wie "D:\Dateien\test.exe" Wie kann ich diesen (natürlich per Eingabedialog, wie mit der Durchsuchen Schaltfläche) herausfinden, um ihn danach ftp_put zu übermitteln?

Danke :)

Grüße
Fl4sh

 
ghostgambler
28-12-2005, 04:23 
 
ehm gar nicht? Oo,

<?php
if (isset($_POST['submit'])) {
ftp_put('mit_dem_temporären_filename', 'aus', $_FILES['ka welcher key']);
}
?>
<form action="index.php?action=upload" enctype="multipart/form-data" method="post">
<input type="file" name="datei">
<input type="submit" name="submit" value="submit">
</form>


der Server hat keinen Zugriff auf den Webbrowser!

 
fl4sh
28-12-2005, 04:31 
 
Ja, aber folgender Code funktioniert ja:

ftp_put($ftp, $dir."/test.exe", "C:\test.exe", FTP_BINARY);

Jedenfalls bei mir. (Nach dem Ausführen befindet sich eine test.exe auf dem server)
Mein Problem besteht ja jetzt eigentlich nur darin, die Adresse C:\test.exe zu ermitteln. Alternativ kann ich auch einfach ein <input type=text> Feld machen, in welches der User die Adresse der Datei eintragen muss.
Aber das ist ja nicht sehr benutzerfreundlich... :(

Danke für die Mühe!
Fl4sh

 
ghostgambler
28-12-2005, 11:31 
 
Original geschrieben von fl4sh
Jedenfalls bei mir. (Nach dem Ausführen befindet sich eine test.exe auf dem server)
*headdesk*
mit dem Problem, dass das die C:\test.exe VOM SERVER ist, nicht vom Client. Dass bei dir Client und Server die selbe Maschiene sind ist ein Sonderfall!
Lad das Skript auf einen Server hoch und probier es dann, da wird es nämlich nicht mehr funktionieren ... als ob man einfach so Dateien vom Rechner des Clients auslesen könnte *kopfschüttel*

 
fl4sh
28-12-2005, 14:36 
 
phh, boahr danke... :)
stand ich wohl zimelich aufm schlauch.
is eigentlich ziemlich logisch, hatte mich auch schon gefragt, warum so ne "sicherheitslücke" nich benutzt wird um files von bestimmten besuchern zu klauen.

hehe, naja danke auf jedenfall :D

- -

Alle Zeitangaben in WEZ +2. Es ist jetzt 19:50 Uhr.