banti
banti

Reputation: 1

Passing a file input to next code line in php

I am trying to get an image from the user by using file input method. It is successfully getting the image from the user. But I want this input to be passed to my next line of code.

Any help would be appreciated.

<input type='file' name='image'>

$two=createfrompng("Here i want this input to be passed");

Upvotes: 0

Views: 59

Answers (3)

bitifet
bitifet

Reputation: 3669

You can't. Your PHP code is executed server-side. Before the resulting html is send to the client so you don't know if the user WILL upload a file or not and even less it's contents.

The effect you are trying to achieve should be done client-side by altering the DOM with javascript.

But anyway you can't immediately access the image because, for security reasons, javascript can't access client's filesystem so you need to upload the file (the way you are doing) process it server-side and send back to the client, which is difficult if you haven't a websocket connection to start comunication to the client.

I suggest you to slightly change your approach and submit your form targetted to an existing container in your page (tipically a div) and respond with only the html to render the image inside it.

See the jQuery .load() function. It is a simple solution and I think it will be the best for you.

…or another even simpler solution is to reload the whole page and mantain state data server side (if you want to manage multiple images as I thought to understand). It is less responsive. But not to much expensive (if your html is not huge) because the browser cache will remember your images (if you does'nt change the url to download them).

Upvotes: 1

Stephan Weinhold
Stephan Weinhold

Reputation: 1643

Check first, if the file exists in $_FILES and the use it, in your case:

$image = getimagesize($_FILES['image']['tmp_name']);
if ($image !== false) {
    $two = createfrompng($image);
}

Upvotes: 0

Nyan Lynn Htut
Nyan Lynn Htut

Reputation: 657

You can use $_FILES global variable. Example :

var_dump($_FILES['image']);

http://php.net/manual/en/reserved.variables.files.php

Upvotes: 1

Related Questions