webguy262 Posted September 11, 2010 Share Posted September 11, 2010 I want to let users select and upload a file. The select form and upload sritp work when they are on different pages, but I want them on the same page with the upload script executing only if the form has been submitted. Here the upload form <!--select the file --> <form enctype="multipart/form-data" action="manage_files.php" method="POST">Please choose a file to upload: <input name="uploaded" type="file" /><input type="submit" value="Upload" /></form> ... and here's the upload code... <!--upload the file --> <?php if (isset($_POST['submit'])) { $target = "safes/"; $target = $target . basename( $_FILES['uploaded']['name']) ; $ok=1; //This is our size condition //if ($uploaded_size > 350000) //{ //echo "Your file is too large.<br>"; //$ok=0; //} //if (!($uploaded_type=="application/zip")) { //echo "You may only upload ZIP files.<br>"; //$ok=0; //} //Here we check that $ok was not set to 0 by an error if ($ok==0) { Echo "Sorry your file was not uploaded"; } //If everything is ok we try to upload it else { if(move_uploaded_file($_FILES['uploaded']['tmp_name'], $target)) { echo "The file ". basename( $_FILES['uploadedfile']['name']). " has been uploaded"; } else { echo "Sorry, there was a problem uploading your file."; } } } ?> What am I missing? Thanks for any help! Quote Link to comment https://forums.phpfreaks.com/topic/213141-file-upload-form-and-script-on-same-page-not-working/ Share on other sites More sharing options...
webguy262 Posted September 11, 2010 Author Share Posted September 11, 2010 I suspect the problem may be in the if (isset($_POST['submit'])) { because I can't even echo something. Any ideas? Quote Link to comment https://forums.phpfreaks.com/topic/213141-file-upload-form-and-script-on-same-page-not-working/#findComment-1110023 Share on other sites More sharing options...
WatsonN Posted September 11, 2010 Share Posted September 11, 2010 change <form enctype="multipart/form-data" action="manage_files.php" method="POST">Please choose a file to upload: <input name="uploaded" type="file" /><input type="submit" value="Upload" /></form> To: <form enctype="multipart/form-data" action="manage_files.php" method="POST">Please choose a file to upload: <input name="uploaded" type="file" /><input type="submit" name="submit" value="Upload" /></form> Quote Link to comment https://forums.phpfreaks.com/topic/213141-file-upload-form-and-script-on-same-page-not-working/#findComment-1110025 Share on other sites More sharing options...
fortnox007 Posted September 11, 2010 Share Posted September 11, 2010 I think but i am not sure your file upload has an action value. but since you want to self refer your page (your action value should be the same as the name of your php file. so if this script is on: fatmonkeys.php your action should be <form enctype="multipart/form-data" action="fatmonkeys.php" method="POST"> -edit- hehe and yes don't forget to give your button a name value since that's what your checking in if(isset($_POST['submit'])){} Quote Link to comment https://forums.phpfreaks.com/topic/213141-file-upload-form-and-script-on-same-page-not-working/#findComment-1110026 Share on other sites More sharing options...
WatsonN Posted September 11, 2010 Share Posted September 11, 2010 I changed <input type="submit" value="Upload" /> to <input type="submit" name="submit" value="Upload" /> Like fortnox007 said you could also just use <?php echo $_SERVER['PHP_SELF']?> so <form enctype="multipart/form-data" action="<?php echo $_SERVER['PHP_SELF']?>" method="POST"> Quote Link to comment https://forums.phpfreaks.com/topic/213141-file-upload-form-and-script-on-same-page-not-working/#findComment-1110027 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.