Solved

Uploading images

Posted on 2004-09-16
4
170 Views
Last Modified: 2006-11-17
How come I keep getting no files specified ? how do I figure out the path. If thats the problem. This page is on my website where my sites hosted too.

<?php
if($file_name !="") {
copy ("$file", "/usr/local/root/$file_name")
        or die("Could not Copy the File");
            }
            else {die("No Files Specified"); }
            ?>
            <html><head><title>Upload Complete</title></head>
            <body><h3>File upload succeeded...</h3>
            <ul>
            <li>Sent: <?php echo "$file_name"; ?>
            <li>Size: <?php echo "$file_size"; ?>
            <li>Type: <?php echo "$file_type"; ?>
            </ul>
            <a href="<?php echo "$file_name" ?> ">
                                         Click Here to View File</a>
                                                       </body>
                                                       </html>
0
Comment
Question by:smphil
  • 2
4 Comments
 
LVL 5

Expert Comment

by:darksinclair
ID: 12080985
Do you have "enctype='multipart/form-data'" in your form tag?  This is required to post files.

also, here is an upload function you could try using :

function upload_file()
{

        //file too big
        if($_FILES['userfile']['size']>$_POST['MAX_FILE_SIZE'] || !$_FILES['userfile']['size'] || $_FILES['userfile']['error']==2)
             return -1;
        //file name
        $userfile_t=$_FILES['userfile']['tmp_name'];
        //upload dir
        $dir="absolute/path/to/upload/dir";

        $dest=$dir . $userfile;

        //file correctly uploaded
        if(is_uploaded_file($userfile_t))
        {
                //we move it to upload dir
                if(!@move_uploaded_file($userfile_t,$dest))
                        return -3;
                //set perission
                @chmod($dest, 0664);
        }
        else
                return -3;

        //all right!
        return 1;
}


I think your problem is that your using $file as the filename.. ( i presume that this is what you call the input text box name on your form) and doing this is correct. you must reference the filename using $_REQUEST['file']['tmp_name'] to get the name of the file being uploaded.

Cheers,
0
 
LVL 13

Accepted Solution

by:
cLFlaVA earned 500 total points
ID: 12080988
Phil.........

First of all, change your code to this:
<?php

if($file_name != "") {
    copy ($file_name, "/usr/local/root/$file_name") or die("Could not Copy the File");
} else {
    die("No Files Specified");
}

?>

Second of all:
Where are you getting $file_name from?  It should be taken from the $_FILES global array.  Try this:

<?php
$file_name = $_FILES['file_field_name']['tmp_name'];
if($file_name != "") {
    copy ($file_name, "/usr/local/root/$file_name") or die("Could not Copy the File");
} else {
    die("No Files Specified");
}

?>
0
 
LVL 1

Author Comment

by:smphil
ID: 12081025

Cory
$file_name  is the name of the actual uploaded file
0
 
LVL 13

Expert Comment

by:cLFlaVA
ID: 12081032
Then try...

$file_name = $_FILES['file_name']['tmp_name'];
if($file_name != "") {
    copy ($file_name, "/usr/local/root/$file_name") or die("Could not Copy the File");
} else {
    die("No Files Specified");
}

And do make sure that your form has the property enctype="multipart/form-data"
0

Featured Post

Better Security Awareness With Threat Intelligence

See how one of the leading financial services organizations uses Recorded Future as part of a holistic threat intelligence program to promote security awareness and proactively and efficiently identify threats.

Join & Write a Comment

Suggested Solutions

Author Note: Since this E-E article was originally written, years ago, formal testing has come into common use in the world of PHP.  PHPUnit (http://en.wikipedia.org/wiki/PHPUnit) and similar technologies have enjoyed wide adoption, making it possib…
These days socially coordinated efforts have turned into a critical requirement for enterprises.
The viewer will learn how to look for a specific file type in a local or remote server directory using PHP.
The viewer will learn how to create and use a small PHP class to apply a watermark to an image. This video shows the viewer the setup for the PHP watermark as well as important coding language. Continue to Part 2 to learn the core code used in creat…

705 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

20 Experts available now in Live!

Get 1:1 Help Now