Uploaduje sobie plik na serwer przy pomocy ajaxa i iframe. Plik uploaduje sie poprawnie, tylko chciałbym z tego pliku wyciągnąć pewne informacje, wiec wczytuje za pomocą advajaxa stronę, na której jest skrypt, który przetwarza dane z wcześniej uploadowanego pliku, tylko, że zazwyczaj zwraca mi błąd, ze plik nie istnieje:
Warning: fopen(tmp/dane.csv) [function.fopen]: failed to open stream: No such file or directory in C:\AppServ\www\test\index.php on line 63
Wydaje mis się, ze jest to związane z tym, ze skrypt wczytuje się zbyt wcześnie, zanim plik zdąży się zuploadować na serwer.
Oto mój formularz:
<?php echo "<form action=\"".$PHP_SELF."?action=uplFile\" target=\"file_upload_frame_".$_GET["frame"]."\" method=\"post\" enctype=\"multipart/form-data\"> <input type=\"file\" name=\"file\" id=\"file\" onChange=\"upl(this, '".$_GET["frame"]."')\"> </form></div>"; ?>
A to funkcja, upl() w js, ktora odpowiada za wyslanie formularza:
function upl(upload, id) { var roz = /\.csv/i; var filename = upload.value; var stat; if (filename.search(roz) == -1) { alert('niedozwolony format pliku'); upload.form.reset(); return false; } else { upload.form.submit(); upload.disabled = true; getData('index.php?show=proceed&filename=' + filename, 'frame_' + id); return true; } }
natomiast funkcja getData(), to funkcja wczytująca stronę do diva, napisana w advajax.
Bardzo proszę o pomoc.