Antworten auf deine Fragen:
Neues Thema erstellen

PHP Upload Skript

SGAMaddin

Nicht mehr ganz neu hier

Hallo,
Ich habe folgendes Problem; Ich will per php Skript ein Bild hochladen; IMMER nur eins, IMMER vom selben Ort der Festplatte zum selben Ort auf dem Server. Dieses PhP Skript, soll sobald es aufgerufen wird einfach die Datei von meiner Platte hochladen und die auf dem Server vorhandene Überschreiben. Ich will kein Formular und nichts. Ich habe mir die Finger wund gegoogelt aber nichts ohne Formular und so nen else [Fehlermeldung] Kram gefunden. Ich will einfach das simpelste was geht. Ich kenn mich mit php nicht aus und war daher nicht in der Lage die Skripte im Netzt, die ihre Informationen aus nem Formular beziehn, so zu ändern, dass die Informationen/Variablen schon feststehen. ich hoffe mir kann jemand auf die Sprünge helfen...

mfG:
Martin
 

M

maigru

Guest

AW: PHP Upload Skript

das funktioniert genau so wie bei den formularen, nur eben ohne formular.

wenn du immer das selbe an den selben ort..... willst, reicht eine einfache zeile.

schau mal nach file()
 

SGAMaddin

Nicht mehr ganz neu hier

AW: PHP Upload Skript

Also wie gesagt, ich kann eigentlich garkein php^^ ich fummel mich nur immer irgendwie durch: Ich habe hier mal die
upload.php-Datei:
Code:
<?php
move_uploaded_file($_FILES['datei']['tmp_name'], "datei.jpg");
?>
index.htm-Formular:
Code:
<form action="upload.php" method="post" enctype="multipart/form-data">
<input type="file" name="datei" value="C:\Dokumente und Einstellungen\Martin\Desktop\Vertretugnsplan\img.JPG"><br>
<input type="submit" value="Hochladen">
</form>
So und was muss ich da jetzt wie und wo hinschreiben? Ich weiß das mein Anliegen an sich einiges einfacher ist als mit Formular, doch ich bekomms ums verrecken net umgesetzt!
 
R

Rotorhead

Guest

AW: PHP Upload Skript

Moin

Um hochgeladene Dateien zu kopieren, nutzt man in PHP normalerweise die Funktion move_uploaded_file().
PHP: move_uploaded_file - Manual

Das "copy()" von maigru funktioniert aber auch.

Zu Deiner Frage, was wohin gehört:

Gib als erstes das Formular aus. Darunter schreibst Du dann

PHP:
<?php
if(isset($_FILES['datei']['tmp_name']) && $_FILES['datei']['tmp_name'] != "") 
{
move_uploaded_file($_FILES['datei']['tmp_name'], "datei.jpg");
echo "Erfolg"; // Kann man auch sein lassen :o)
}
?>
Dann führt er den Code nur aus, wenn eine Datei übergeben wurde.

Der ganze Code ist also
PHP:
<form action="upload.php" method="post" enctype="multipart/form-data">
<input type="file" name="datei" value="C:\Dokumente und Einstellungen\Martin\Desktop\Vertretugnsplan\img.JPG"><br>
<input type="submit" value="Hochladen">
</form>


<?php
if(isset($_FILES['datei']['tmp_name']) && $_FILES['datei']['tmp_name'] != "")
{
move_uploaded_file($_FILES['datei']['tmp_name'], "datei.jpg");
echo "Erfolg"; // Kann man auch sein lassen :o)
}
?>

Ich habe das jetzt nicht getestet, sollte aber so funktionieren.

Viel Spaß.

Chris
 
M

maigru

Guest

AW: PHP Upload Skript

ja mit überprüfung ist natürlich die edlere variante :)

ich dachte aber eben das normal copy ja auch reichen dürfte, da ja eh immer der selber ort, datei, ..... ist :)
 

Chriss1987

me.drinkCoffee();

AW: PHP Upload Skript

Hi,

zu deinem Problem gibt es mehrere Ansätze, zuerst einmal, wie sieht die Umgebungssituation aus?
Du hast einen Server und einen PC, ist das richtig?
Du möchtest eine bestimmte Datei hochladen, das ist klar.
Möchtest du dafür den Browser öffnen, oder wäre auch eine andere Lösung denkbar?

Per Browser und Formular wird es nicht automatisch gehen, da das File-Field keine Vorbelegung zulässt, was auch ganz gut so ist (man stelle sich nur mal vor, ein verstecktes Feld auf einer Homepage wird mit einer Bestimmten Systemdatei, in der z.B. Passwörter o.ä. stehen, vorbelegt, ein einfacher Textlink wird zu einem Submit und schon hat jemand all deine Passwörter...). Eine andere Möglichkeit wäre, auf dem PC, wenns ja eh IMMER der gleiche ist, php zu installieren und ein Script zu schreiben, welches bei Aufruf die bestimmte Datei per FTP hochlädt (wenn es mit php realisiert werden soll). Ansonsten per Kommandozeile / Batch...

Möglich ist alles ;-)

Schöne Grüße aus dem Sauerland!
Chriss
 

SGAMaddin

Nicht mehr ganz neu hier

AW: PHP Upload Skript

Danke erst mal für die Antworten ich werde gleich nochmal versuchen ob ich was davon benutzen kann.
Also ich will damit folgedes erreichen:
Ich habe ein Powerpoint-Document auf meinem PC, dass speichere ich als jpg per makro auf meinem PC. Nun will ich die jpg-datei irgendwie auf meinen Server bekommen und das möglichst ohne was zu drücken, also wäre am besten einfach eine URL, die ich viehleicht sogar direckt mit dem Makro aufrufen kann. Es geht also einfach darum eine Folie der Präsentation, die ich täglich mehrmals ändere als jpg auf meinem Server zu haben.
 
M

maigru

Guest

AW: PHP Upload Skript

wieso machst du das nicht einfach über ftp oder über netzwerk?
 

SGAMaddin

Nicht mehr ganz neu hier

AW: PHP Upload Skript

weil powerpoint die jpg nicht auf dem ftp-server speichern kann und weil ich das nicht mit der Hand jedesmal hochladen will...
 

Chriss1987

me.drinkCoffee();

AW: PHP Upload Skript

Guten Morgen,

also ich würde das so machen:
1.) die neuste php-Version (wenn noch kein php installiert, z.b. über xampp o.ä.) downloaden und installieren (Link: PHP For Windows: Binaries and sources Releases, den Installer laden und ausführen)

2.) eine upload.php mit folgendem Inhalt erstellen:
PHP:
<?php

// Pfad zum Bild
define("PATH", "C:\\Pfad\\zum\\Bild.jpg");  # Backslash durch doppelte Backslash ersetzen!
define("REMOTEPATH", "/httpdocs/pictures/Bild.jpg");

// FTP-LOGIN
define("HOST", "ftp.meinedomain.de");
define("PORT", "21");
define("USER", "username");
define("PASS", "password");

// Verbindung zum FTP aufbauen
$ftp = ftp_connect(HOST, PORT);
$login = ftp_login($ftp, USER, PASS);

// Verbindung überprüfen
if ((!$ftp) || (!$login))
    {
        echo "Fehler beim Verbinden zum FTP";
        exit;
    }

// Verzeichnis wechseln
if (!ftp_chdir($ftp, dirname(REMOTEPATH) . "/"))
    {
        // Verbindung schließen
        ftp_close($ftp);
        
        echo "Verzeichnis wechseln fehlgeschlagen!\r\n";
        exit;
    }

// Datei hochladen
if (ftp_put($ftp, basename(REMOTEPATH), PATH, FTP_BINARY))
    {
        echo "Übertragung erfolgreich\r\n";
    }
else
    {
        echo "Fehler beim Übertragen";
    }

// Verbindung schließen
ftp_close($ftp);

exit;

?>
Pfade und FTP-Logindaten anpassen

3.) Verknüpfung auf die php.exe erstellen, als Ziel volgendes eintragen:
Code:
"C:\path\zur\php.exe" "C:\path\zur\upload.php"

Dann brauchst du nurnoch die Verknüpfung aufrufen. Wenn du das in regelmäßigen Abständen machen möchtest, kannst du dir auch einen entsprechenden "Geplanten Task" angelen! ;-)

Schöne Grüße aus dem Sauerland!
Chriss

P.S.: diese Vorgehensweise eignet sich auch hervorragend für Webcambilder, ein kostenloses Programm, welches in einstellbaren Intervallen ein Bild auf der Festplatte speichert findet man z.B. hier: (Webcam Timershot) ;-)
 

SGAMaddin

Nicht mehr ganz neu hier

AW: PHP Upload Skript

DANKE!!! Chriss du bist der Beste!!! Das ist genau das was ich brauche hat beim ersten Versuch absolut reibungslos geklappt! Danke für das super skript!
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Neueste Themen & Antworten

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.565
Beiträge
1.538.067
Mitglieder
67.488
Neuestes Mitglied
Andrew56524
Oben