Warning: filemtime(): stat failed for

Ich erhalte eine Fehlermeldung, wenn ich versuche Dateien zum hochladen auf meinen webserver. Sie werden hochgeladen in Ordnung, es ist, wenn ich ziehen Informationen aus der Datei, wirft es einen Fehler. Auch beim Klick auf die hochgeladene Datei bringt es der falsche Weg es bringt './filename.jpg' nicht 'uploads/filename.jpg' Den upload-Ordner ist /uploads/

Ich glaube, es ist der Umgang mit den echten Pfad der Datei, aber ich bin nicht sicher, wie es zu beheben.

Hier ist der Beispielcode, den ich verwende.

<form enctype="multipart/form-data" action="./.upload_file.php" method="post">
    <input type="hidden" name="MAX_FILE_SIZE" value="1000000" />
    Choose a file to upload: <input name="uploaded_file" type="file" />
    <input type="submit" value="Upload" />
  </form> 

    <table class="sortable">
        <thead>
        <tr>
            <th>Filename</th>
            <th>Type</th>
            <th>Size</th>
            <th>Date Modified</th>
            <th>Delete File?</th>
        </tr>
        </thead>
        <tbody>
        <?php


    //Adds pretty filesizes
    function pretty_filesize($file) {
        $size=filesize($file);
        if($size<1024){$size=$size." Bytes";}
        elseif(($size<1048576)&&($size>1023)){$size=round($size/1024, 1)." KB";}
        elseif(($size<1073741824)&&($size>1048575)){$size=round($size/1048576, 1)." MB";}
        else{$size=round($size/1073741824, 1)." GB";}
        return $size;
    }



    //Checks to see if veiwing hidden files is enabled
    if($_SERVER['QUERY_STRING']=="hidden")
    {$hide="";
     $ahref="./";
     $atext="Hide";}
    else
    {$hide=".";
     $ahref="./?hidden";
     $atext="Show";}



     //Opens directory
     $path = "./uploads/";
     $myDirectory=opendir("$path");
     echo $myDirectory .'My directory';
     echo '<br/>'.$path;

    //Gets each entry
    while($entryName=readdir($myDirectory)) {
       $dirArray[]=$entryName;
    }

    //Closes directory
    closedir($myDirectory);

    //Counts elements in array
    $indexCount=count($dirArray);

    //Sorts files
    sort($dirArray);

    //Loops through the array of files
    for($index=0; $index < $indexCount; $index++) {

    //Decides if hidden files should be displayed, based on query above.
        if(substr("$dirArray[$index]", 0, 1)!=$hide) {

    //Resets Variables
        $favicon="";
        $class="file";

    //Gets File Names
        $name=$dirArray[$index];
        $namehref=$dirArray[$index];

        //Gets Date Modified
        $modtime=date("M j Y g:i A", filemtime($dirArray[$index]));
        $timekey=date("YmdHis", filemtime($dirArray[$index]));


    //Separates directories, and performs operations on those directories
        if(is_dir($dirArray[$index]))
        {
                $extn="&lt;Directory&gt;";
                $size="&lt;Directory&gt;";
                $sizekey="0";
                $class="dir";

            //Gets favicon.ico, and displays it, only if it exists.
                if(file_exists("$namehref/favicon.ico"))
                    {
                        $favicon=" style='background-image:url($namehref/favicon.ico);'";
                        $extn="&lt;Website&gt;";
                    }

            //Cleans up . and .. directories
                if($name=="."){$name=". (Current Directory)"; $extn="&lt;System Dir&gt;"; $favicon=" style='background-image:url($namehref/.favicon.ico);'";}
                if($name==".."){$name=".. (Parent Directory)"; $extn="&lt;System Dir&gt;";}
        }

    //File-only operations
        else{
            //Gets file extension
            $extn=pathinfo($dirArray[$index], PATHINFO_EXTENSION);

            //Prettifies file type
            switch ($extn){
                case "png": $extn="PNG Image"; break;
                case "jpg": $extn="JPEG Image"; break;
                case "jpeg": $extn="JPEG Image"; break;
                case "svg": $extn="SVG Image"; break;
                case "gif": $extn="GIF Image"; break;
                case "ico": $extn="Windows Icon"; break;

                case "txt": $extn="Text File"; break;
                case "log": $extn="Log File"; break;
                case "htm": $extn="HTML File"; break;
                case "html": $extn="HTML File"; break;
                case "xhtml": $extn="HTML File"; break;
                case "shtml": $extn="HTML File"; break;
                case "php": $extn="PHP Script"; break;
                case "js": $extn="Javascript File"; break;
                case "css": $extn="Stylesheet"; break;

                case "pdf": $extn="PDF Document"; break;
                case "xls": $extn="Spreadsheet"; break;
                case "xlsx": $extn="Spreadsheet"; break;
                case "doc": $extn="Microsoft Word Document"; break;
                case "docx": $extn="Microsoft Word Document"; break;

                case "zip": $extn="ZIP Archive"; break;
                case "htaccess": $extn="Apache Config File"; break;
                case "exe": $extn="Windows Executable"; break;

                default: if($extn!=""){$extn=strtoupper($extn)." File";} else{$extn="Unknown";} break;
            }

            //Gets and cleans up file size
                $size=pretty_filesize($dirArray[$index]);
                $sizekey=filesize($dirArray[$index]);
        }

    //Output
     echo("
        <tr class='$class'>
            <td><a href='./$namehref'$favicon class='name'>$name</a></td>
            <td><a href='./$namehref'>$extn</a></td>
            <td sorttable_customkey='$sizekey'><a href='./$namehref'>$size</a></td>
            <td sorttable_customkey='$timekey'><a href='./$namehref'>$modtime</a></td>
        </tr>");
       }
    }
    ?>

        </tbody>
    </table>
Also, wie ist filemtime() nicht? Ist es die Rückkehr einer falschen Zeit? Ist es eine Ausnahme oder die Anzeige einen Fehler, ist es so dass Sie mit einer leeren Seite?
Wenn Sie stat failed, dann den Dateinamen/Pfad, die Sie verwenden, ist ungültig, oder Sie haben keine Berechtigungen für den Zugriff auf eine oder mehrere der übergeordneten Verzeichnisse der Datei.
Berechtigungen festgelegt sind, um alle zu öffnen, da dies ein Teil eines gesamten Website sicher ist, 3 Leute haben Zugang zu ihm. Es gibt diese 1432811000.jpg JPEG-Bild-Bytes Jan 1 1970 12:00 UHR und wenn darauf geklickt wird, nicht bringt Sie zu dem Bild. Es ist ohne uploads/ Teil der url
Filesize() stat Fehler auch....

InformationsquelleAutor vcurams91 | 2014-05-23

Schreibe einen Kommentar