Zainteresowałem się prostym uploaderem plików stąd. Miałby on wgrywać pliki bez przeładowywania strony. I tutaj pierwsze pytanie - czy można bezkarnie używać pływających ramek - iframe? Pamiętam jak uczyłem się php na początku obecnego wieku, to już wtedy było w książce, żeby raczej odchodzić o używania iframe. Jak to jest obecnie?
Ale do rzeczy. W JavaScript ogólnie raczkuję. Ni epotrzafię znaleźć pczyczyny dlaczego nie wykonuje się warunek if (success == 1){ , czyli jest komunikat There was an error during file upload!.
index.html:
<html> <head> <script type="text/javascript"> function startUpload(){ document.getElementById('uploadProcess').style.visibility = 'visible'; document.getElementById('uploadForm').style.visibility = 'hidden'; return true; } function stopUpload(success,uploadedFile){ var result = ''; if (success == 1){ //Uploaded file preview var embed = document.getElementById("UploadedFile"); var clone = embed.cloneNode(true); clone.setAttribute('src',uploadedFile); embed.parentNode.replaceChild(clone,embed); }else { } document.getElementById('uploadProcess').style.visibility = 'hidden'; document.getElementById('uploadForm').style.visibility = 'visible'; return true; } </script> </head> <body> <form action="upload.php" method="post" enctype="multipart/form-data" target="uploadTarget" onsubmit="startUpload();" > <label> File: <input name="myfile" type="file" size="30" /> </label> <label> <input type="submit" name="submitBtn" class="sbtn" value="Upload" /> </label> </p> </form> <!-- Uploaded file preview --> <div> <embed id="UploadedFile" src="" width="390px" height="160px"> </div> </body> </html>
upload.php:
<?php $success = 0; $uploadedFile = ''; //File upload path $uploadPath = 'uploads/'; $success = 1; $uploadedFile = $targetPath; } ?>