AndzX8-842 Posted December 4, 2005 Report Share Posted December 4, 2005 Kods ir mazliet papildināts http://lv.php.net/manual/en/features.file-upload.php paraugs. HTML dokuments. <!-- The data encoding type, enctype, MUST be specified as below --> <form enctype="multipart/form-data" action="upload.php" method="post"> <!-- MAX_FILE_SIZE must precede the file input field --> <input type="hidden" name="MAX_FILE_SIZE" value="30000" /> <!-- Name of input element determines name in $_FILES array --> Send this file: <input name="userfile" type="file" /> <input type="submit" value="Send File" /> </form> PHP dokuments. http://paste.php.lv/2955 (ja no 5 līdz 8 rindiņai visam uzliek // priekšā un noņem extension pārbaudi, tad strādā) Izdotais error. Possible file upload attack! Here is some more debugging info:Array ( [userfile] => Array ( [name] => background.jpeg [type] => [tmp_name] => [error] => 2 [size] => 0 ) ) Nekādi nesaprotu, kapēc [type] un [tmp_name] kaut kur pazūd un kā dabūt, lai strādātu. Acīmredzot šie abi netiek izveidoti vai ir vienreiz lietojami un tad no tiem atbrīvojas php_core(?). Lai nu kā, man neizdodas saprast, kur vaininieks paslēpies. Link to comment Share on other sites More sharing options...
php_Stopp Posted December 4, 2005 Report Share Posted December 4, 2005 (edited) ieliec tā koda apakšā echo $_FILES['userfile']['error']; un pasaki, ko izmet oops, tas jau ir parādīts. error ir 2, tātad ir pārsniegts formā norādītais faila izmēra limits. formā ir norādīts 30000b, tātad fails, kuru tu gribēji uploadēt, ir lielāks par 30kb Edited December 4, 2005 by php_Stopp Link to comment Share on other sites More sharing options...
AndzX8-842 Posted December 7, 2005 Author Report Share Posted December 7, 2005 Nē, netika pārsniegts. Faila izmērs ir 10KB, limits = 30KB. Tieši to pašu failu izdevās pārsūtīt pirms pārveidoju php lapā esošo paraugu uz to, kuru var redzēt. Link to comment Share on other sites More sharing options...
Kavacky Posted December 7, 2005 Report Share Posted December 7, 2005 Interesanti, man strādā un neko nemet. Starp citu, tam "$uploaddir = '/core/htdocs/images';" neprasās pielikt "/" pēc "images" un aizvākt pirms "core"? Link to comment Share on other sites More sharing options...
AndzX8-842 Posted December 7, 2005 Author Report Share Posted December 7, 2005 Labi, tagad itkā strādā, bet nu ir nākamais jautājums. Kā noteikt faila izmēru pirms tas ir aizsūtīts uz serveri? Jo pašreizējais variants apskata izmēru tad, kad fails jau ir uz servera un tas rada zināmas problemas, piemēram, ja nu kāds izdomā 10GB failu pamēģināt aizsūtīt? Izmērs tiks noteikts, tikai, kad sūtīšana būs pabeigta...bet jēga kāda sūtīt failu, kurš tūlīt pēc augšuplādes tiks dzēsts un rij servera resursus...nekāda. Kā, lai ar to tiek galā? PHP manuālī rakstīts, ka faila izmēru var noteikt tikai servera galā. Varbūt var norādīt savienojuma ilgumu datu pārraidei no servera uz datoru no kura augšuplādē? Nebūtu visai precīzi, bet labāk nekā nekas. Idejas? Link to comment Share on other sites More sharing options...
Grey_Wolf Posted December 7, 2005 Report Share Posted December 7, 2005 configos var iestaadiit max faila izmeeru, un arii pashaa HTMLa Link to comment Share on other sites More sharing options...
AndzX8-842 Posted December 7, 2005 Author Report Share Posted December 7, 2005 Proti max POST size iekš PHP iestatījumiem? Link to comment Share on other sites More sharing options...
Grey_Wolf Posted December 7, 2005 Report Share Posted December 7, 2005 post_max_size = 2M IMPHO vareeja arii iestaadiit pasham Apachem ... vel jau neaizmirti par HTMLu :) nav 100% garantija ka kaads nemeeginaas piemaaniit, bet taa tomeer ir usera puses kontrole... Link to comment Share on other sites More sharing options...
php_Stopp Posted December 7, 2005 Report Share Posted December 7, 2005 2M jau ir tas post_max_size defaultā, ja nemaldos (tas tā.. ja kas ;) ) Link to comment Share on other sites More sharing options...
Recommended Posts