2009-07-16 7 views
0

ho alle Ich versuche, Bilder hochladen, aber ich habe eine Warnung, dass ich nichtBilder in PHP

verstand hier ist der Code

// print out contents of $_FILES ARRAY 

print "Print out of the array of files: FILES <br>"; 

print_r($_FILES); 

print "<br><br>"; 

$F1 = $_FILES["fname"]; 

print_r($F1); 

print "<br><br>"; 

// 0 means a successful transfer 

    if ($_FILES["fname"]["error"] > 0) { 

    print "An error occurred while uploading your file"; 

    exit(0); 
    } 

// only accept jpg images pjpeg is for Internet Explorer.. should be jpeg 

    if (!($_FILES["fname"]["type"] == "image/pjpeg")) { 

    print "I only accept jpg files!"; 

    exit(0); 
    } 

// divide size by 1024 to get it in KB 

if ($_FILES["fname"]["size"]/1024 > 50) { 

    print "Your gif file is too large! Less that 50KB please!"; 

    exit(0); 
    } 

// check that file is not already there in your uploads folder 

    if (file_exists("Uploads/" . $_FILES["fname"]["name"])) { 

    print "$F1[name] already exists. Choose another name for your file."; 

    exit(0); 
    } 


// move file from temp location on server to your uploads folder 

    **move_uploaded_file($_FILES["fname"]["tmp_name"], "Uploads/".$_FILES["fname"]["name"]);** 

    print "Stored in:"." Uploads/".$_FILES["fname"]["name"]; 


// save location of upload to text file uploads.txt for later use 

$datafile = fopen("uploads.txt","a"); 

flock($datafile,1); 

fwrite($datafile, "Uploads/".$_FILES["fname"]["name"]."\n"); 

flock($datafile,3); 

fclose($datafile); 

und die Warnung (siehe fett gedruckte Linie

)

Warnung: move_uploaded_file (Uploads/avatar3.jpg): failed to open stream: No such file or directory in /home/www/mariam.awardspace.info/php/posts.php auf der Leitung 57

Warnung: move_uploaded_file(): Kann nicht bewegen '/ tmp/phprqcpQB' zu 'Uploads/avatar3.jpg' in /home /www/mariam.awardspace.info/php/posts.php on line 57

dank im Voraus

Antwort

2

2 Dinge in den Sinn kommen. .

  1. Versuchen Sie, einen Weg wie

    $ _SERVER [ 'DOCUMENT_ROOT'] mit '/ path/to/file.jpg');

  2. dann stellen Sie sicher, dass der Upload-Ordner vorhanden ist im Stammordner Ihrer Website

+0

gibt es zwei andere Dinge 3. Stellen Sie sicher, dass der Webserver Schreibzugriff auf den Uploads-Ordner hat, stellen Sie sicher, dass der Ordner "Uploads" heißt und nicht "uploads" empfindlich, wenn es auf einem * Nix-Server läuft – jsnfwlr

+0

hmmm ja gute Punkte. Weißt du, ob der Fehler für falsche Berechtigungen immer noch, wie in der Frage, Datei nicht gefunden wurde? Ich weiß nicht ... –

+0

David - der Fehler für die Berechtigungen wäre in der Tat anders, aber es ist immer etwas wert, zu überprüfen. – jsnfwlr

1

Das Verzeichnis „Uploads“ existiert nicht oder Sie haben keine Berechtigung, um es zu schreiben.