if (isset($_COOKIE['msg']) && $_COOKIE['msg'] != '') { if (get_magic_quotes_gpc()) $msg = stripslashes($_COOKIE['msg']); else $msg = $_COOKIE['msg']; setcookie('msg', ''); } ?> <!-- Beginning of main page --> <html><head> <title>IFRAME Async file uploader example</title> </head> <body> <?php if (isset($msg)) echo '<p style="font-weight: bold;">'.$msg.'</p>'; ?> <h1>Upload file :</h1> <p>File will begin to upload just after selection. </p> <p>You may write file description, while you file is being uploaded.</p>
<form action="<?=$PHP_SELF?>" target="upload_iframe" method="post" enctype="multipart/form-data"> <input type="hidden" name="fileframe" value="true"> <!-- Target of the form is set to hidden iframe --> <!-- From will send its post data to fileframe section of this PHP script (see above) -->
<label for="file">text file uploader:</label><br> <!-- JavaScript is called by OnChange attribute --> <input type="file" name="file" id="file" onChange="jsUpload(this)"> </form> <script type="text/javascript"> /* This function is called when user selects file in file dialog */ function jsUpload(upload_field) { // this is just an example of checking file extensions // if you do not need extension checking, remove // everything down to line // upload_field.form.submit();
var re_text = /\.txt|\.xml|\.zip/i; var filename = upload_field.value;
/* Checking file type */ if (filename.search(re_text) == -1) { alert("File does not have text(txt, xml, zip) extension"); upload_field.form.reset(); return false; }
upload_field.form.submit(); document.getElementById('upload_status').value = "uploading file..."; upload_field.disabled = true; return true; } </script> <iframe name="upload_iframe" style="width: 400px; height: 100px; display: none;"> </iframe> <!-- For debugging purposes, it's often useful to remove "display: none" from style="" attribute -->
<form action="<?=$PHP_SELF?>" method="POST"> <!-- one field is "disabled" for displaying-only. Other, hidden one is for sending data --> <input type="hidden" name="filename" id="filename"> <br><br>