Jump to content
php.lv forumi

Failu augšupielāde


malka1

Recommended Posts

Saglabā failu kaut kādā savā paplašinājumā, lai nevarētu ekzekjūtot. Pie apskates ielasi failu un header'ī norādi attiecīgo mime type, pie lejupielādes vari padot arī īsto faila nosakumu - nosaukumu, ar kādu tas tika augšupielādēts.

Link to comment
Share on other sites

man galvenais, lai urkjis nevareetu izpildiit savu kodu un viss. var vienkaarshi $_FILES kopeet uz noteiktu folderi, kuraa buus aizliegts izpildiities skriptiem?

 

piemeeram, shis kods buus droshs, ja "galleries" mapee buus aizliegts izpildiities skriptiem?

if(isset($_FILES['uploaded'])){
$target = "galleries/".basename($_FILES['uploaded']['name']);
print_r($_FILES);

if(move_uploaded_file($_FILES['uploaded']['tmp_name'],$target)) echo "OK!";//$chmod o+rw galleries

}
else{
echo "<form enctype='multipart/form-data' action='CodeTool.php' method='POST'>";
echo "File:<input name='uploaded' type='file'/><input type='submit' value='Upload'/>";
echo "</form>";
}

Link to comment
Share on other sites

Tur jau tā lieta, ka tikai bildēm var atrast daudz risinājumu, bet vajag risinājumu dažāda tipa failiem. Vai ar manis iepriekš parādīto piemēru, vēl pievienojot šo pārbaudi faila paplašinājumam + aizliegumu izpildīties skriptiem augšupielādes mapē:

 

$allowedExtensions = array("txt", "rtf", "doc", blablabla);

function isAllowedExtension($fileName) {
 global $allowedExtensions;

 return in_array(end(explode(".", $fileName)), $allowedExtensions);
}

 

, pietiks, lai neuztrauktos par urķiem?

Edited by malka1
Link to comment
Share on other sites

ja to skriptu darbina uz linux, tad ar exec var palaist komandu file

 

piemeeram:

file -bi kautkaads_flash.swf // izvadaas: application/x-shockwave-flash

file -bi /pb.php //text/plain; charset=us-ascii

tas pats fails tikai nomainiits paplashinaajums

file -bi /pb.jpg //text/plain; charset=us-ascii

 

un redzeet kas tas ir par failu....

uztaisa sarakstu ar atljautajiem un ja nav sarakstaa tad failu neuplaudojam ...

vai arii ja tas ir text fails tad vinju sakompresee

Link to comment
Share on other sites

×
×
  • Create New...