Ik heb net een script geschreven die moet bestanden via een html formulier in een mapje zetten.
Het uploaden zelf gaat prima, zolang ik geen directory aangeef, komt hij netjes in het mapje ./include/fotos/upload/ te staan.
Nu heb ik in het formulier ook een text field staan, als je daar iets invoert dan maakt hij die map aan in he tmapje upload.
vervolgens was het doel om daar het geuploade bestandje in te krijgen, maar dat lukt niet. Als ik in ftp kijk dan zie ik dat het mapje wel gemaakt is, maar het bestand is nergens, ook niet in mapje upload en ook niet in het nieuwe mapje.
Rechten staan goed, meen ik want als ik kijk in FTP zie ik gewoon 777.
Hier is mijn script:
// start
<?php
if(!isset($_POST))
{
echo ("<b> Er is niks gepost!</b><hr>");
include ("upload.html");
}
else
{
if($_FILES['pix']['tmp_name'] == "none")
{
echo "<b> File is niet goed geupload, kijk naar de grootte van het bestand hij moet minder dan 500k bevatten.</b><br>";
include ("upload.html");
exit();
}
if(!ereg("image",$_FILES['pix']['type']))
{
echo "<b>File is not a picture. please try another file.</b><br>";
include ("upload.html");
exit();
}
else
{
if(!isset($_REQUEST['dir']))
{
$bestemming = "./include/fotos/upload/".$_FILES['pix']['name']."";
}
else
{
$dir_name = $_REQUEST['dir'];
$path_to_dir = "./include/fotos/upload/".$dir_name."";
$bestemming = "./include/fotos/upload/".$dir_name."/".$_FILES['pix']['name']."";
$Create_Dir = mkdir($path_to_dir, 0777);
$Chmod_Dir = chmod($path_to_dir, 0777);
echo ("<hr>");
$scandir = scandir($path_to_dir);
print_r($scandir);
echo ("<hr>");
}
echo "".$bestemming.".<hr>";
$temp_file = $_FILES['pix']['tmp_name'];
move_uploaded_file($temp_file,$bestemming);
echo "<b> File succesfully uploaded </b> ".$_FILES['pix']['name']."".$_FILES['pix']['type'].".";
}
}
?>
// eof
iemand idee?
836 views