attaboy Posted April 10, 2013 Share Posted April 10, 2013 I'm trying to modify this file which uploads images: <form action="upload.php" method="post" enctype="multipart/form-data"> <label for="file">Filename:</label> <input type="file" name="file" id="file"><br> <input type="submit" name="submit" value="Submit"> </form> <?php if (isset($_POST["submit"])) { $allowedExts = array("gif", "jpeg", "jpg", "png"); $extension = end(explode(".", $_FILES["file"]["name"])); if ((($_FILES["file"]["type"] == "image/gif") || ($_FILES["file"]["type"] == "image/jpeg") || ($_FILES["file"]["type"] == "image/jpg") || ($_FILES["file"]["type"] == "image/png")) && ($_FILES["file"]["size"] < 20000) && in_array($extension, $allowedExts)) { if ($_FILES["file"]["error"] > 0) { echo "Return Code: " . $_FILES["file"]["error"] . "<br>"; } else { echo "Upload: " . $_FILES["file"]["name"] . "<br>"; echo "Type: " . $_FILES["file"]["type"] . "<br>"; echo "Size: " . ($_FILES["file"]["size"] / 1024) . " kB<br>"; echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br>"; if (file_exists("./../upload/" . $_FILES["file"]["name"])) { echo $_FILES["file"]["name"] . " already exists. "; } else { move_uploaded_file($_FILES["file"]["tmp_name"], "./../upload/" . $_FILES["file"]["name"]); echo "Stored in: " . "./../upload/" . $_FILES["file"]["name"]; } } } else { echo "Invalid file"; } } ?> to one that uploads audio: this is what I have now: <?php if (isset($_POST["submit"])) { $allowedExts = array("mp3", "wav", "wma", "aif"); $extension = end(explode(".", $_FILES["file"]["name"])); if ((($_FILES["file"]["type"] == "audio/mp3") || ($_FILES["file"]["type"] == "audio/wav") || ($_FILES["file"]["type"] == "audio/wma") || ($_FILES["file"]["type"] == "audio/aif")) && ($_FILES["file"]["size"] < 20000000) && in_array($extension, $allowedExts)) { if ($_FILES["file"]["error"] > 0) { echo "Return Code: " . $_FILES["file"]["error"] . "<br>"; } else { echo "Upload: " . $_FILES["file"]["name"] . "<br>"; echo "Type: " . $_FILES["file"]["type"] . "<br>"; echo "Size: " . ($_FILES["file"]["size"] / 1024) . " kB<br>"; echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br>"; if (file_exists("./../load/songs" . $_FILES["file"]["name"])) { echo $_FILES["file"]["name"] . " already exists. "; } else { move_uploaded_file($_FILES["file"]["tmp_name"], "./../load/songs" . $_FILES["file"]["name"]); echo "Stored in: " . "./../load/songs" . $_FILES["file"]["name"]; } } } else { echo "Invalid file"; } } ?> any help will be greatly appreciated .... thanks Quote Link to comment Share on other sites More sharing options...
attaboy Posted April 10, 2013 Author Share Posted April 10, 2013 Sorry, I didn't mention a couple of things, first I get the "Invalid file" message also in the first example(the one that works) we have this nomenclature ($_FILES["file"]["type"] == "image/jpeg") I assumed changing to ($_FILES["file"]["type"] == "audio/wav") would allow me allow me to handle audio files maybe $_FILES doesn't have a audio property. One more thing, as I understand the $_FILES method is deprecated. I haven't seen any alternative if someone could point me to a good example of an alternative that could be helpful ... thanks. Quote Link to comment Share on other sites More sharing options...
jazzman1 Posted April 10, 2013 Share Posted April 10, 2013 I think that the post content-length of the binary file exceeds the limit. Paste in that on the top of your script: <?php error_reporting(-1); ?> Quote Link to comment 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.