Het definitieve checken gebeurt in PHP.
Maar om te voorkomen dat een file onnodig temp wordt opgeslagen
validate ik de form ook in javascript.
De procedure is al volgt:
1 - een bestand wordt gekozen
2 - (eventueel tekst en) bestand worden gecheckt.
3 - bij oke wordt de 'submitknop' getoond.
4 - versturen
Wanneer ik alles de eerste keer juist heb werkt alles door naar PHP.
En wordt het bestand opgeslagen.
Is er wat verkeerd dan komt vanuit javascript de melding wat er verkeerd is.
Maar dan wordt de vorige juiste submit herhaald, en weer opnieuw opgeslagen.
Ik heb al geprobeerd met aparte input file reset, met form.reset(), met location.reload();
Ook wat geprobeerd met onsubmit = "return showname()".
Maar krijg het niet voor elkaar.
De uitwerking is dan wat anders...
Maar in ieder geval niet correct.
Hier wat stukjes uit de javascript en HTML.
Myvar is de waarde voor oke(1) of fout(0);
<form id = "vorm" method="post" enctype="multipart/form-data" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<input type="hidden" name="MAX_FILE_SIZE" value="4000000">
<div class="upload" id="upload"><input name="userfile" id = "userfile" type="file" style="text-align:left;" onchange = "showname()"></div>
<div class="uploadA"><input type="image" id="process" name="process" type="submit" value= "submit" src="button2.png" border="0"></div>
</form>
<script>
var myVar = 1;
function showname () {
.
.
.
.
.
if (myVar == 0)
{
//document.getElementById("userfile").value = null;
//vorm.reset();
//location.reload();
}
}
[size=xsmall]Toevoeging op 20/10/2017 14:48:20:[/size]
Ik denk dat het opgelost is...
Myvar weg en in die plek: return false;
<div class="upload" id="upload"><input name="userfile" id = "userfile" type="file" style="text-align:left;" onchange = "return showname()"></div>