php - move_uploaded_file not working after preview page -
i'm submitting form preview page(form) , final submit. i'm having trouble getting move_uploaded_file work. how solve this? when check directory there no file there.
preview page
$tmpname = $_files['titleimage']['tmp_name']; $imagefile = $_files['titleimage']['name']; $filename = basename($imagefile); $imagename = dirname(__file__).'/avatar/'.$filename; echo "<form enctype='multipart/form-data' id='submitpreview' action='/upload' method='post'> <input type='hidden' name='image' value='$tmpname' readonly /> <input type='hidden' name='imagedir' value='$imagename' readonly />"; //other code echo "<div id='preview-submit-button'><a>submit</a></div> </form>"; upload page
$image = $_post['image']; $directory = $_post['imagedir']; move_uploaded_file($image,$directory);
are sure temporary file $_files['titleimage']['tmp_name'] still there after submit second form? remember, it's temporary file. i'm afraid lives time first form submitted (just until request processed).
so, should:
as possible (that means, in page receive first form, preview page in fact) save temporary file in folder of yours using
move_uploaded_file().if user confirms preview, move file directory saved in step 1 definitive folder, using
rename()function.if user does not confirm preview, delete using
unlink()function.
additionaly, marc b pointed out, should have security of preview-save logic. passing paths , filenames in hidden form field way hackers break system. have @ php sessions (maybe know), , consider moving paths public form session variable.
Comments
Post a Comment