Ik had een script waarme je files kon oplopen, dit scripte werkt perfect.
Echter een nadeel was dat dit in een los script was, ik besloot dus om het script te intigreren in mijn site, dit is ook gelukt alleen 1 probleem
Alle $HTTP_POST_FILES waardes zijn leeg, spreek ik echter het "oude" script aan dan werkt het wel, het allevreemdste is dat de php code zelf identiek is.
Het enigste verschil is dat nu het upload gedeelte een functie geworden is van de site en bij het oude was het een los script.
Het allervreemdste is als ik $_FILES gebruikt het weer wel werkt, op zich is het probleem opgelost alleen ik kan niet de oorzaak vinden waarom het met $HTTP_POST_FILES niet werkt.
Dit is het scripje:
Dit werkt dus perfect als het script los draait, maar zodra ik het in mijn site via een functie zet zoals hierboven dan zijn de $HTTP_POST_FILES leeg, zodra je dus $HTTP_POST_FILES veranderd in $_FILES dan werkt het wel.
Hoe kan dit nu en waar zit nu de fout, het is geen server probleem want als los script werkt het dus wel. (zoals al vermeld het is opgelost maar ik wil graag weten wat nu de oorzaak is dat het niet werkt)
Echter een nadeel was dat dit in een los script was, ik besloot dus om het script te intigreren in mijn site, dit is ook gelukt alleen 1 probleem
Alle $HTTP_POST_FILES waardes zijn leeg, spreek ik echter het "oude" script aan dan werkt het wel, het allevreemdste is dat de php code zelf identiek is.
Het enigste verschil is dat nu het upload gedeelte een functie geworden is van de site en bij het oude was het een los script.
Het allervreemdste is als ik $_FILES gebruikt het weer wel werkt, op zich is het probleem opgelost alleen ik kan niet de oorzaak vinden waarom het met $HTTP_POST_FILES niet werkt.
Dit is het scripje:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
| function upload() { global $HTTP_POST_FILES; case "put": if(file_exists($HTTP_POST_FILES['file']['tmp_name'])) { ftp_put($connection, $currentDir . "/" . filePart(StripSlashes($fname)), $HTTP_POST_FILES['file']['tmp_name'], $mode); unlink($HTTP_POST_FILES['file']['tmp_name']); } break; <A HREF="JavaScript:toggle('uploadform');" class=leftmenulink>$lblUploadFile</A> <FORM id="uploadform" style='display:none;' NAME='putForm' ENCTYPE="multipart/form-data" METHOD=POST ACTION="$PHP_SELF" onsubmit="return validate()"> <INPUT TYPE="hidden" NAME="actionType" VALUE="put"> <input type="hidden" name="fname"> <INPUT TYPE='hidden' NAME='currentDir' VALUE='$currentDir'> <INPUT TYPE="hidden" NAME="MAX_FILE_SIZE" VALUE="$maxFileSize"> <INPUT TYPE='hidden' NAME='mode' VALUE='$mode'> <INPUT TYPE="file" NAME="file" STYLE="width:150px; font-size:7pt;"><BR> <INPUT TYPE="SUBMIT" VALUE="OK" STYLE='width=150px; font-size:7pt;'> </FORM> } |
Dit werkt dus perfect als het script los draait, maar zodra ik het in mijn site via een functie zet zoals hierboven dan zijn de $HTTP_POST_FILES leeg, zodra je dus $HTTP_POST_FILES veranderd in $_FILES dan werkt het wel.
Hoe kan dit nu en waar zit nu de fout, het is geen server probleem want als los script werkt het dus wel. (zoals al vermeld het is opgelost maar ik wil graag weten wat nu de oorzaak is dat het niet werkt)