Gå til innhold

Få filelist fra mappe på en side?


Anbefalte innlegg

Heisann!

Har et uploadprogram som legger opp filene til en mappe på sida mi

 

http://www.mittdomene.no/uploads/uploads/

 

På scriptet jeg bruker vises filene under ved hjelp av <?=$filelist?>

Jeg vil ha filelist i en annen side enn uploads-sida.

Hva gjør jeg?

 

Her er koden på scriptet (uredigert)

 

 

<?php

//vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv

//  You may change maxsize, and allowable upload file types.

//^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

//Mmaximum file size. You may increase or decrease.

$MAX_SIZE = 2000000;

                           

//Allowable file Mime Types. Add more mime types if you want

$FILE_MIMES = array('image/jpeg','image/jpg','image/gif'

                  ,'image/png','application/msword');

 

//Allowable file ext. names. you may add more extension names.           

$FILE_EXTS  = array('.zip','.jpg','.png','.gif');

 

//Allow file delete? no, if only allow upload only

$DELETABLE  = true;                             

 

 

//vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv

//  Do not touch the below if you are not confident.

//^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

/************************************************************

*    Setup variables

************************************************************/

$site_name = $_SERVER['HTTP_HOST'];

$url_dir = "http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['PHP_SELF']);

$url_this =  "http://".$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'];

 

$upload_dir = "files/";

$upload_url = $url_dir."/files/";

$message ="";

 

/************************************************************

*    Create Upload Directory

************************************************************/

if (!is_dir("files")) {

  if (!mkdir($upload_dir))

  die ("upload_files directory doesn't exist and creation failed");

  if (!chmod($upload_dir,0755))

  die ("change permission to 755 failed.");

}

 

/************************************************************

*    Process User's Request

************************************************************/

if ($_REQUEST[del] && $DELETABLE)  {

  $resource = fopen("log.txt","a");

  fwrite($resource,date("Ymd h:i:s")."DELETE - $_SERVER[REMOTE_ADDR]"."$_REQUEST[del]\n");

  fclose($resource);

 

  if (strpos($_REQUEST[del],"/.")>0);                  //possible hacking

  else if (strpos($_REQUEST[del],$upload_dir) === false); //possible hacking

  else if (substr($_REQUEST[del],0,6)==$upload_dir) {

    unlink($_REQUEST[del]);

    print "<script>window.location.href='$url_this?message=deleted successfully'</script>";

  }

}

else if ($_FILES['userfile']) {

  $resource = fopen("log.txt","a");

  fwrite($resource,date("Ymd h:i:s")."UPLOAD - $_SERVER[REMOTE_ADDR]"

            .$_FILES['userfile']['name']." "

            .$_FILES['userfile']['type']."\n");

  fclose($resource);

 

$file_type = $_FILES['userfile']['type'];

  $file_name = $_FILES['userfile']['name'];

  $file_ext = strtolower(substr($file_name,strrpos($file_name,".")));

 

  //File Size Check

  if ( $_FILES['userfile']['size'] > $MAX_SIZE)

    $message = "The file size is over 2MB.";

  //File Type/Extension Check

  else if (!in_array($file_type, $FILE_MIMES)

          && !in_array($file_ext, $FILE_EXTS) )

    $message = "Sorry, $file_name($file_type) is not allowed to be uploaded.";

  else

    $message = do_upload($upload_dir, $upload_url);

 

  print "<script>window.location.href='$url_this?message=$message'</script>";

}

else if (!$_FILES['userfile']);

else

$message = "Invalid File Specified.";

 

/************************************************************

*    List Files

************************************************************/

$handle=opendir($upload_dir);

$filelist = "";

while ($file = readdir($handle)) {

  if(!is_dir($file) && !is_link($file)) {

      $filelist .= "<a href='$upload_dir$file'>".$file."</a>";

      if ($DELETABLE)

        $filelist .= " <a href='?del=$upload_dir$file' title='delete'>x</a>";

      $filelist .= "<sub><small><small><font color=grey>  ".date("d-m H:i", filemtime($upload_dir.$file))

                  ."</font></small></small></sub>";

      $filelist .="<br>";

  }

}

 

function do_upload($upload_dir, $upload_url) {

 

$temp_name = $_FILES['userfile']['tmp_name'];

$file_name = $_FILES['userfile']['name'];

  $file_name = str_replace("\\","",$file_name);

  $file_name = str_replace("'","",$file_name);

$file_path = $upload_dir.$file_name;

 

//File Name Check

  if ( $file_name =="") {

  $message = "Invalid File Name Specified";

  return $message;

  }

 

  $result  =  move_uploaded_file($temp_name, $file_path);

  if (!chmod($file_path,0777))

    $message = "change permission to 777 failed.";

  else

    $message = ($result)?"$file_name uploaded successfully." :

            "Somthing is wrong with uploading a file.";

  return $message;

}

 

?>

 

<center>

  <font color=red><?=$_REQUEST[message]?></font>

  <br>

  <form name="upload" id="upload" ENCTYPE="multipart/form-data" method="post">

    Upload File <input type="file" id="userfile" name="userfile">

    <input type="submit" name="upload" value="Upload">

  </form>

 

  <br><b>My Files</b>

  <hr width=70%>

  <?=$filelist?>

  <hr width=70%>

  <small><sup>Developed By

  <a style="text-decoration:none" href="http://tech.citypost.ca">CityPost.ca</a>

  </sup></small>

</center>

Lenke til kommentar
Videoannonse
Annonse

Bare og lete i det scriptet

<?php

$mappe = "liste/"; //Bytt ut med der du vil ha filelist ting

$handle=opendir($mappe);
$filelist = "";
while ($file = readdir($handle)) {
 if(!is_dir($file) && !is_link($file)) {
     $filelist .= "<a href='$mappe$file'>".$file."</a>";
     $filelist .="<br/>";
 }
}
?>
<?=$filelist?>

 

Legg dette i et php dokument ;)

Tror det skal funke ikke sikker, Har ikke testet selv ;)

Endret av hero_ruler
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...