Ciao a tutti.
Spero di postare nella sezione giusta.
Come da titolo vi espongo il problema e spero potrete darmi una mano.
Sto costruendo un form con un campo file per l'upload.
Visto che questo tag non è di facile manipolazione con i css ho deciso di aggirare il problema rendendo invisibile il type file e simulare lo sfoglia da un pulsante.
Fin qui tutto bene.
Su tutti i browser la cosa funziona benissimo ma su IE, al click del pulsante submit non invia in post i dati, ma svuota il campo di tipo file se poi riclicco invia i dati. Non so se mi son spiegato bene cmq qui di seguito posto il codice, molto semplice.Per verificare il problema è sufficiente eliminare lo style dalla pagina, e vedrete che su IE invece di inviare i dati svuota il campo userfile.
codice:
<?php
$userfile_tmp = $_FILES['userfile']['tmp_name'];
echo "userfile : ".$userfile_tmp."
";
//recupero il nome originale del file caricato
$userfile_name = $_FILES['userfile']['name'];
echo "userfile_name : ".$userfile_name."
";
?>
<html>
<head>
<script type="text/javascript" language="javascript" src="js/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready (function () {
$('#btn').bind("click",function(){
$('#upload').click();
var value = $('#upload').val();
$('#testo').val(value);
});
$('#upload').live('change', function(){
var value = $('#upload').val();
$('#testo').val(value);
});
});
</script>
<style type="text/css">
input#upload{
display: block;
visibility:hidden;
width:0;
height:0;
}
</style>
</head>
<body>
<form action="prova.php" method="post" enctype="multipart/form-data" id="contactForm" name="contactForm" >
<div class="row">
<label>Allega c.v.</label>
<input type="text" name="appcv" id="testo" value="" class="inputField" />
<a name="cv"> </a>
Carica File
<input type="file" name="userfile" class="inputField" id="upload"/>
</div>
<div class="clear"></div>
<div class="row">
<label></label>
<input type="submit" id="invia" value="Invia" />
</div>
</form>
</body>
</html>
Ringraziandovi in anticipo per qualsiasi suggerimento vi risaluto a tutti!