Upload Zeil Ordner



  • Hey Leute,

    ich würde gerne von euch wissen, wie ich den Zielordner ändern kann!
    Hier habe ich ein vorhanden Script, der die Bilder im gleichen Ordner abspeicher!

    **<?php

    class maxUpload{
    var uploadLocation; function maxUpload(){ this->uploadLocation = getcwd().DIRECTORY_SEPARATOR;

    }
    function setUploadLocation(dir){ this->uploadLocation = $dir;
    }
    ......................................................................

    function uploadFile(){
    if (!isset(_POST['submitBtn'])){ this->showUploadForm();
    } else {
    msg=;msg = ''; error = '';

    //Check destination directory
    if (!file_exists(this->uploadLocation)){ error = "Das Zielverzeichnis existiert nicht! ";
    } else if (!is_writeable(this->uploadLocation)) { error = "Das Zielverzeichnis ist nicht beschreibbar! ";
    } else {
    $target_path = $this->uploadLocation . basename( $_FILES['myfile']['name']);

    if(@move_uploaded_file($_FILES['myfile']['tmp_name'], $target_path)) {**

    ich vermute es liegt an diesem Zeilen Code :
    $this->uploadLocation = getcwd().DIRECTORY_SEPARATOR;



  • leider finde ich nichts darüber, was dieser Part zu bedeuten hat!

    getcwd().DIRECTORY_SEPARATOR;



  • Hast du mal daran gedacht, kurz ins PHP Manual zu schauen? 😉



  • Doch habe ich, aber ich persönlich mag es nicht, dort ist es etwas komisch erklärt!

    zudem kommt ich weis nicht wie man das abändert, habe momentan viele Varianten versucht ,die jedoch misslangen



  • Hallo,

    ich kann mich täuschen, aber ich vermute das folgende Funktion dafür gedacht ist.

    function setUploadLocation($dir){ 
    $this->uploadLocation = $dir; 
    }
    

    VlG



  • Leider erfolglos... schon versucht !



  • Bist du dir da sicher? Vielleicht hast du auch einfach einen falschen Pfad eingegeben.

    Das Zielverzeichnis bildet sich aus der Klassenvariable uploadLocation und dem Dateinamen

    $target_path = $this->uploadLocation . basename( $_FILES['myfile']['name']);
    

    VlG



  • Bei mir funktioniert alles! Nur er speichert alle Bilder in einem Ordner, jedoch will ich, dass er diese in einem Unterordner speichert ...upload/img

    er speichert mir diese in den Ordner upload



  • Hallo,

    ich weiß nicht was du für weitere Hilfe erwartest. Die Funktion ist wie gesagt dafür vorgesehen und einen anderen Weg gibt es auch nicht!

    $maxUpload->setUploadLocation("/upload/img"); // Vorausgesetzt upload/img liegt im Stamm
    

    LG



  • Geht nicht sorry ich peils nicht wie ich es einbinden soll bze editireen muss in welcje zeile.....

    Das mi den klammern hat mir gehlfen weil ich es es auch so getestet habe ("/upload/img"); jedoch muss ich jetzt wissen wie der gesamte code aussihet bzw wo ich s rein tun solll habe diesen überblick nicht sry



  • Guten Morgen,

    irgendwo in deinem Quellcode - aber möglichst an sinnvoller Stelle - definierst du den Pfad für die Bilder und teilst das der Klasse "maxUpload" mit.

    $maxUpload = new maxUpload;
    $maxUpload->setUploadLocation("/upload/img");
    

    An dem bestehenden Code (aus deinem ersten Post) musst du gar nichts ändern.

    VlG



  • Hey,

    diese Information sieht viel entsprechend aus, jedoch funktioniert Sie nicht!

    Ich habe soeben in meiner Index Datei nachgeschaut und dieser beinhaltet diesen Code:

    myUpload=newmaxUpload();myUpload = new maxUpload(); myUpload->uploadFile();

    Den habe ich mit deinem geändert! Nun jetzt öffnet er nicht mein script zum upload



  • Hallo,

    du musst den Code natürlich entsprechend anpassen

    BEISPIEL ⚠ :

    $myUpload = new maxUpload; 
    $myUpload->setUploadLocation("/upload/img");
    $myUpload->uploadFile();
    

    VlG



  • Hey,

    selbstverständlich habe ich auch das getan gehabt, aber er zeigt mir an das " Das Zielverzeichnis existiert nicht!" Rechte sind vergeben!

    Hab noch den Code zur Prüfung ob der Ordner vorhanden ist

    if (!file_exists($this->uploadLocation)){
                    $error = "Das Zielverzeichnis existiert nicht! ";
    

    Ich denke jedoch es muss hier dran liegen

    class maxUpload{
        var $uploadLocation;
        function maxUpload(){
            $this->uploadLocation = getcwd().DIRECTORY_SEPARATOR;}
        function setUploadLocation($dir){
            $this->uploadLocation = $dir;}
        function showUploadForm($msg='',$error=''){
    

    hab schon vieles probiert....
    meine index datei liegt im Upload Ordner und die Bilder sollen in dem Ordner img verschoben werden hmm /upload/img/ ist doch richtig



  • Nochmals Danke für deine Bemühungen bzw Hilfe!



  • Hallo,

    zum Abfragen des Verzeichnisses kannst du auch id_dir() verwenden!

    Ich gehe immernoch davon aus, dass einfach das Verzeichnis falsch ist. Liegt der Ordner upload im Stamm? Du musst immer vom Stammverzeichnis ausgehen.

    VlG



  • es liegt im stamm !
    meine index Datei liegt im Ordner Upload und der img Ordner liegt auch im Ordner Upload....



  • Hallo,

    ruf mal getcwd().DIRECTORY_SEPARATOR auf und vergleiche das mit deiner Verzeichnisangabe.
    Theoretisch musst du den Pfad nur entsprechend ergänzen:

    $myUpload->uploadLocation = getcwd().DIRECTORY_SEPARATOR."img/";
    

    VlG



  • Hat sich schon erledigt, nochmals Danke für die hilfreiche Informationen! Ich habs anders gelöst!

    Index.php

    $myUpload = new maxUpload;                                      
    $myUpload->setUploadLocation(getcwd().DIRECTORY_SEPARATOR."img".DIRECTORY_SEPARATOR);
    $myUpload->uploadFile();
    

Anmelden zum Antworten