Datei Upload ohne Formular
andreas korthaus
- php
Hallo!
Ich würde gerne einen automatischen datei-Upload integrieren, der Bilder automatisch neue Dateien aus einem Verzeichnis im LAN(zugriff aus WAN möglich) auf ein externes Verzeichnis auf einem Webserver kopiert.
Grundätzlich ist das kopieren mit "copy" ja recht einfach, nur habe ich das Problem, dass ich dafür kein vorgeschaltetes Formular verwenden möchte, sondern sobald das script ausgeführt wird, sollen sagen wir mal 10 Dateien hochgeladen werden. Die DAteinamen ermittel ich schon vorher, das bekomme ich schon hin, nur ohne das Formular sind die dateien ja nicht schon übertragen. Soweit ich weiß kopiert das Formular die Dateien ja in ein Temporäres Verzeichnis auf dem Server, und Copy kopiert diese dann irgendwo hin. Das geht ja jetzt nicht so einfach. Geht das nur noch mit den FTP Funktionen(Wenn ja wie ungefähr?), oder geht das auch anders?
Viele Grüße
Andreas
Also ich hatte das jetzt mal mit FTP-Probiert, aber das funktioniert noch nicht, die Verbindung bekomme ich wohl, nur kann er wohl die Datei bei mir auf dem Win2K Rechner nicht öffnen - habe C:\Daten\datei.jpg angegeben, ist das so falsch? Dier pfad ist richtig, wie sollte das sonst heißen? Ich bekomme folgende Anzeige, wenn ich mein Upload Script auf dem Server aufrufe:
Verbunden mit ftp.knet-systems.de als Benutzer abc
Warning: error opening C:\Daten\mama.jpg in /server/webseite/test/upload.php on line 27
Ftp upload war fehlerhaft!
Der Code zu dem Script habe ich aus dem PHP-Manual:
<?php
// Benutzerdaten habe ich korrekt eingegeben - stellt die Verbindung ja auch her!
$destination_file = "/mama.jpg";
$source_file = "C:\Daten\mama.jpg";
// Herstellen der Basis-Verbindung
$conn_id = ftp_connect("$ftp_server");
// Einloggen mit Benutzername und Kennwort
$login_result = ftp_login($conn_id, "$ftp_user_name", "$ftp_user_pass");
// Verbindung überprüfen
if ((!$conn_id) || (!$login_result)) {
echo "Ftp-Verbindung nicht hergestellt!";
echo "Verbindung mit $ftp_server als Benutzer $user nicht möglich";
die;
} else {
echo "Verbunden mit $ftp_server als Benutzer $ftp_user_name";
}
// Upload der Datei
$upload = ftp_put($conn_id, "$destination_file", "$source_file", FTP_BINARY);
// Upload-Status überprüfen
if (!$upload) {
echo "Ftp upload war fehlerhaft!";
} else {
echo "Datei $source_file auf $ftp_server als $destination_file geschrieben";
}
// Schließen des FTP-Streams
ftp_quit($conn_id);
?>
Jemand ne Idee woran das scheitert?
Viele Grüße
Andreas
PS:"/" und "" habe ich schon in allen erdenklichen Varianten versucht!
Huhu Andreas
wenn ich Dich richtig verstanden habe möchtest Du eine Datei von Deinem lokalen Rechner durch ein (serverseitiges )PHP-Skript auf Deinen Webspace hochladen.
Dazu musst Du auf Deinem lokalen Rechner einen Server installieren, einen entsprechenden FTP-Account anlegen und die Datei in ein per FTP zugängliches Verzeichnis ablegen damit sich das PHP-Skript diese "abholen kann". Dazu musst Du dann noch Deine IP-Adresse wissen.
Das ganze ist so natürlich recht umständlich, ich habe allerdings nicht so recht verstanden warum genau Du das machen möchtest. Vielleicht beschreibst Du Deine AUfgabestellung / Idee nochmal etwas detailierter.
Viele Grüße
lulu
Hi!
wenn ich Dich richtig verstanden habe möchtest Du eine Datei von Deinem lokalen Rechner durch ein (serverseitiges )PHP-Skript auf Deinen Webspace hochladen.
genau das, nur nicht eine sondern alle geänderten Daten in einem kpl. Verzeichnis!
Dazu musst Du auf Deinem lokalen Rechner einen Server installieren, einen entsprechenden FTP-Account anlegen und die Datei in ein per FTP zugängliches Verzeichnis ablegen damit sich das PHP-Skript diese "abholen kann". Dazu musst Du dann noch Deine IP-Adresse wissen.
Oder auch umgekehrt. Ich habe im LAN einen ünbr das WAn errichbaren Apache, auf dem das Script läuft und dr sich an den externen Server anwählt.
Das ganze ist so natürlich recht umständlich, ich habe allerdings nicht so recht verstanden warum genau Du das machen möchtest. Vielleicht beschreibst Du Deine Aufgabestellung / Idee nochmal etwas detailierter.
Wie gesagt um das hochladen aller nach einem bst. Zeitpunkt geänderten Dateien. Ich hatte nur gedacht das geht auch vom PC aus, aber da bin ich von ab, ich weiß jetzt wie es geht und arbeite mich da mal durch :)
Jedenfalls viele Dank!
Grüße
Andreas
Viele Grüße
lulu