Webprofis is een Forum waarin je vragen kunt stellen die webgerelateerd zijn. Heb je vragen over of problemen met je Webpagina, HTML, CSS, Javascript, PHP of andere client of serverside scriptingtalen? Stel ze dan gerust op dit forum. Op dit forum zijn een aantal vrijwilligers actief die u graag met uw vragen willen helpen en u waar mogelijk een passend antwoord aanbieden. Hebt u zelf veel ervaring en kennis met betrekking tot het bovenstaande? U bent van harte welkom om uw kennis met anderen te delen!

We hopen dat eenieder op dit Forum een leerzame ervaring mag opdoen.

Team Webprofis

Uploadscript

bewerkt do 21 mei 2015 in Tutorials & Scripten Posts: 879







Uploadscript met filter op bestandstype en grootte bestanden
Map "uploads" wordt automatisch aangemaakt als deze nog niet bestaat en bestanden worden hierin geupload
Bestanden krijgen een unieke naam mee waarmee overschrijven voorkomen wordt

PHP code met Form:

<h2>Uploadscript</h2>

<?php

if($_SERVER['REQUEST_METHOD'] == 'POST') {

// array met toegestane file extensies
$allowedExts = array("gif", "jpeg", "jpg", "png", "zip", "html", "htm", "js", "css", "less", "txt", "php");
$temp = explode(".", $_FILES["file"]["name"]);
$extension = end($temp);

// creeer map "uploads" als deze nog niet bestaat
$root = '/uploads/';
if (!is_dir($root)) {
@mkdir("uploads/";, 0777);




if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/jpg")
|| ($_FILES["file"]["type"] == "image/pjpeg")
|| ($_FILES["file"]["type"] == "image/x-png")
|| ($_FILES["file"]["type"] == "image/png")
|| ($_FILES["file"]["type"] == "text/html")
|| ($_FILES["file"]["type"] == "text/javascript")
|| ($_FILES["file"]["type"] == "text/css")
|| ($_FILES["file"]["type"] == "text/less")
|| ($_FILES["file"]["type"] == "application/zip")
|| ($_FILES["file"]["type"] == "text/plain"))
&& ($_FILES["file"]["size"] < 20000000) // 2 Mb max
&& in_array($extension, $allowedExts))
{
// echo's als upload succesvol is
echo 'Status: upload succesvol!<br />';
echo 'Bestand: ' . $_FILES["file"]["name"] . '<br />';
echo 'Type: ' . $_FILES["file"]["type"] . '<br />';
echo 'Grootte: ' . ($_FILES["file"]["size"] / 1024) . ' kB<br />';

$data = explode(".",$_FILES["file"]["name"]);
$newfilename = uniqid().".".end($data);
move_uploaded_file($_FILES["file"]["tmp_name"], "uploads/" . $newfilename);
// het pad naar het bestand dat geupload is; ervan uitgaande dat de map uploads in de root staat
echo 'Url: ' . '<b>http://www.jouwwebsite.nl/uploads/' . $newfilename.'</b>';
echo '<br /><br />';
}

else
{
// echo als file extensie niet is toegestaan
echo "Niet toegestaan bestand";
}
}
else {

}


} // end request_method POST
?>

<form action="" method="post" enctype="multipart/form-data">

<input type="file" name="file" id="file"><br /><br />
<input type="submit" name="submit" value="Upload">
</form>
Getagd:
Dit Topic is gesloten.