Rajaprabhu Aravindasamy
Rajaprabhu Aravindasamy

Reputation: 67217

Receiving fake path while uploading

Whenever the uploading process happens through the Browsers rather than IE, the path
belongs to the file from client side systems is showing like "c:/fakepath/x.jpg"..! I tried out lot of
Solutions from the web to rectify that, but nothing works..! If anybody successfully tackled this
problem before Just send me your solution..!
HTML code that i used

<form name="xx"  enctype="multipart/form-data">
<input type="file" name="up"/>
</form>

My Java script..

alert(document.xx.up.value);

But it is displaying "c:/fakepath/x.jpg" in all browsers except IE.

Upvotes: 2

Views: 6029

Answers (5)

Elroy Kanye
Elroy Kanye

Reputation: 1

Adding some few more steps to your code and introducing a change event, you could retrieve the file object from the event target if there is a file selected at all.

<form name="xx"  enctype="multipart/form-data">
    <input type="file" onchange="fileChangeAction(event)" name="up"/>
</form>

<script>
    const fileChangeAction = ($event) => {
        let file;
        if($event.target) {
            if($event.target.files) {
                file = $event.target.files[0];
            }
        }
        console.log(file);
    }
</script>

Upvotes: 0

Abhinav Lal
Abhinav Lal

Reputation: 11

Change the ClientId of the AsyncFileUpload control from Inherit to AutoId

Upvotes: 0

Eyal Levin
Eyal Levin

Reputation: 18484

This post shows a way to remove the 'fakepath' display:

// Change the node's value by removing the fake path

inputNode.value = fileInput.value.replace("C:\fakepath\", "");

Upvotes: 0

user149341
user149341

Reputation:

Modern browsers won't tell you what the actual path of the file is, because it's really none of your business as an application programmer, and is likely to contain private user information (e.g, their username).

There is no workaround. Learn to live without that information.

Upvotes: 1

Sam
Sam

Reputation: 4339

This is a browser security restriction. You can't set the value of the file upload control via script, nor can you read the correct path.

Upvotes: 1

Related Questions