ciao, in una pagina ho il seguente form:
cliccando sul pulsante Upload, viene richiamata questa funzione:codice:<form name="upload"> <span class="content">Allega un file:</span> <INPUT TYPE="file" NAME="fileU"> <INPUT TYPE="button" value="Upload" onClick="upload(fileU)"> </form>
che ho costruito in modo che venga passato allo script upload.php, il path del file.codice:function upload(e) { var path = e.value; // prelevo il path del file var f = window.open(); var request; request = new XMLHttpRequest(); request.open("POST", "/upload.php", true); request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); request.onreadystatechange = function() { if(request.readyState == 4) { var response = request.responseText; f.document.write(response); } } request.send("submit=&fileU="+path); }
Il problema è che non carica il file...lo script php restituisce sempre la scritta "Nessun file è stato trasferito! Selezionare un file!".....cioè sembra che il path del file non venga passato correttamente.
Vi posto parte dello script php, così potete capire meglio:
Codice PHP:<?php
$maxdim = 31400000;
if(isset($_POST['submit']))
{
if($_FILES['fileU']['tmp_name']=="" || $_FILES['fileU']['tmp_name']==" ") {
$msg = '<span style="color:red">Nessun file è stato trasferito! Selezionare un file!</span>';
} else {
if(!is_uploaded_file($_FILES['fileU']['tmp_name'])) {
$msg = '<span style="color:red">Seleziona un file esistente!</span>';
unlink($_FILES['fileU']['tmp_name']); // Cancello
} else {
......
Come faccio a passare tramite Ajax un file allo script php?

Rispondi quotando