Page 1 of 2 12 LastLast
Results 1 to 10 of 11

Thread: Let others upload files

  1. #1
    Join Date
    Nov 2005
    Posts
    10
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Exclamation Let others upload files

    Hi...i am trying to make a form on my site that will let others upload files onto my server. I am trying to have a picture contest that will let other submit pictures via my site. I want users to be able to search for file on their comp and then upload it to my server

    i have no clue how to code this...any help is greatly appreciated.

    thanks

  2. #2
    Join Date
    Aug 2004
    Posts
    10,143
    Thanks
    3
    Thanked 1,008 Times in 993 Posts
    Blog Entries
    16

    Default

    File uploading requires a server side script (be careful of security too). For PHP, here are a couple of good ones:

    Ezupload (commercial)
    Web 2.0 File Repository (open source)

  3. #3
    Join Date
    Nov 2005
    Posts
    10
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Cool Thanks

    I will try this. thanks...
    David

  4. #4
    Join Date
    Nov 2005
    Location
    ankara / turkiye
    Posts
    16
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Default

    this is a php question but i'll answer. mods should carry this topic to correct place

    make a php file like that:
    -------------------------
    Code:
    <?
    if(isset($_POST['action']) && $_POST['action']=="upload" && $_FILES['resim']['tmp_name'] && strstr($_FILES['resim']['type'],"jpeg"))
    {
    	$path=$_SERVER["DOCUMENT_ROOT"].dirname($_SERVER['PHP_SELF']);
    	if(substr($path,strlen($path)-1)!="/") $path.="/";
    	move_uploaded_file($_FILES['resim']['tmp_name'],$path."/big/".$_FILES['resim']['name']);
    }
    
    ?>
    <form action="" enctype="multipart/form-data" method="post">
    <input type="file" name="resim">
    <input type="hidden" name="action" value="upload">
    <input type="submit" value="Y&#252;kle">
    </form>
    in line 3 ['type'],"jpeg" allows only jpeg files to upload. if you delete only this part you should able to upload all files.

  5. #5
    Join Date
    Feb 2006
    Posts
    4
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Default

    Is there a way for it to show a link to DL it once it is finished uploading.

  6. #6
    Join Date
    Mar 2006
    Location
    Illinois, USA
    Posts
    12,164
    Thanks
    265
    Thanked 690 Times in 678 Posts

    Default

    Yeah. You need to figure out where its saving stuff (I didn't look too closely at the script, but its not that hard to figure out... just find the path) and then use:
    (Actually, on first glance, looks like the path is the root of your account... '/' which takes you there from any page. Just use that, or replace that in the code below)

    (within the php)
    PHP Code:
    ...
    echo 
    '<br><a href="/'.filename($_FILES['resim']['tmp_name']).'>HERE'S THE LINK TEXT</a>.';
    ... 
    Reformat as you will.


    Actually, I'm not positive on that code.
    I'm just getting into this myself.
    Check that out. Hope it helps.
    It should at least point you in the right direction.

    BTW, what I'm not sure about is getting the filename into the link. I think that will give it to you, but I don't completely understand the inner workings of the code that cadaver supplied.

  7. #7
    Join Date
    Feb 2006
    Posts
    4
    Thanks
    0
    Thanked 0 Times in 0 Posts

  8. #8
    Join Date
    Nov 2005
    Posts
    10
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Default Finally found the script i needed

    Hey everyone!!

    I finally foudn the script i needed on hotscripts.com. It is ONE php file. On my server, i have to behind an ecripted password page. That I found on dynamic drive. (http://www.dynamicdrive.com/dynamicindex9/password.htm)

    The file is very easy to use and lets you customize the file extentions to accept and the file sizes. It also creates a log of all files uploaded and a folder to store the files.

    It wont let me attach a php file so here is the code

    <?php
    //vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
    // You may change maxsize, and allowable upload file types.
    //^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    //Mmaximum file size. You may increase or decrease.
    $MAX_SIZE = 100000000;

    //Allowable file ext. names. you may add more extension names.
    $FILE_EXTS = array('.zip','.jpg','.png','.gif','.doc','.pdf','.eml','.idx','.npc','.qdf','.qel','.qph','.qtx','.qsd');

    //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 Extension Check
    else if (!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".urlencode($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.tailoredweb.com">TailoredWeb.com</a>
    </sup></small>
    </center>
    Good Luck

  9. #9
    Join Date
    Mar 2006
    Location
    Illinois, USA
    Posts
    12,164
    Thanks
    265
    Thanked 690 Times in 678 Posts

    Default

    BTW, what I'm not sure about is getting the filename into the link.
    What I typed would work.... as long as the syntax was right for getting the filename. Sorry... I have no idea why it's not working... I haven't gotten into that stuff enough yet.

  10. #10
    Join Date
    Feb 2006
    Posts
    4
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Default

    Quote Originally Posted by drosen24
    Hey everyone!!

    I finally foudn the script i needed on hotscripts.com. It is ONE php file. On my server, i have to behind an ecripted password page. That I found on dynamic drive. (http://www.dynamicdrive.com/dynamicindex9/password.htm)

    The file is very easy to use and lets you customize the file extentions to accept and the file sizes. It also creates a log of all files uploaded and a folder to store the files.

    It wont let me attach a php file so here is the code


    Good Luck
    aint working for me, dont even get an area to upload the file

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •