PHP gevorderde |
|
Hoi,
Ik ben een upload script aan het maken en had graag indien de nodige folders niet bestaan de folders automatisch aangemaakt nu vroeg ik me af of er geen kortere/beter lanier is om dit te doen
ik gebruik nu het volgende.
in config.inc.php staat het volgende:
<?php
$scriptpath = $_SERVER['DOCUMENT_ROOT'] . '/scripts/Eigen Scripts/upload_files';
$uploadfolder = 'uploads'; // hoofdmap naar waar de geuploade bestanden moeten weggeschreven worden
$mimecat = array('application', 'audio', 'image', 'text', 'video');
?>
<?php $scriptpath = $_SERVER['DOCUMENT_ROOT'] . '/scripts/Eigen Scripts/upload_files'; $uploadfolder = 'uploads'; // hoofdmap naar waar de geuploade bestanden moeten weggeschreven worden $mimecat = array('application', 'audio', 'image', 'text', 'video'); ?>
en in index.php gebruik ik volgende controle:
<?php
error_reporting(E_ALL);
require_once('config.inc.php');
?>
</head>
<body>
<?php
if (! is_dir($uploadfolder)) {
if (! is_writable($scriptpath)) {
echo 'De map <b>' . $scriptpath . '</b> is niet beschrijfbaar';
exit;
} else {
mkdir($uploadfolder);
chmod($uploadfolder, 0777);
foreach ($mimecat as $cat) {
mkdir($uploadfolder . '/' . $cat);
chmod($uploadfolder . '/' . $cat, 0777);
}
}
echo 'De folders waar de geuploade bestanden zullen worden opgeslagen werden succesvol aangemaakt!';
echo '<meta http-equiv="refresh" content="3;url=' . $_SERVER['PHP_SELF'] . '">';
} elseif (is_writable($scriptpath)) {
echo 'Zorg ervoor dat de scriptfolder niet meer beschrijbaar is!';
} else {
$ok = TRUE;
foreach ($mimecat as $cat) {
if (! is_dir($uploadfolder . '/' . $cat)) {
if (! is_writable($uploadfolder)) {
echo 'De map <b>' . $uploadfolder . '</b> is niet beschrijfbaar!';
exit;
} else {
mkdir($uploadfolder . '/' . $cat);
chmod($uploadfolder . '/' . $cat, 0777);
}
} elseif (! is_writable($uploadfolder . '/' . $cat)) {
$ok = FALSE;
}
}
if ($ok === FALSE) {
echo 'Een van de mappen is niet beschrijfbaar!';
} else {
echo 'Alles is ok om door te gaan';
}
}
?>
<?php require_once('config.inc.php'); ?> </head> <body> <?php if (! is_dir($uploadfolder)) { echo 'De map <b>' . $scriptpath . '</b> is niet beschrijfbaar'; } else { chmod($uploadfolder, 0777); foreach ($mimecat as $cat) { mkdir($uploadfolder . '/' . $cat); chmod($uploadfolder . '/' . $cat, 0777); } } echo 'De folders waar de geuploade bestanden zullen worden opgeslagen werden succesvol aangemaakt!'; echo '<meta http-equiv="refresh" content="3;url=' . $_SERVER['PHP_SELF'] . '">'; echo 'Zorg ervoor dat de scriptfolder niet meer beschrijbaar is!'; } else { $ok = TRUE; foreach ($mimecat as $cat) { if (! is_dir($uploadfolder . '/' . $cat)) { echo 'De map <b>' . $uploadfolder . '</b> is niet beschrijfbaar!'; } else { mkdir($uploadfolder . '/' . $cat); chmod($uploadfolder . '/' . $cat, 0777); } $ok = FALSE; } } if ($ok === FALSE) { echo 'Een van de mappen is niet beschrijfbaar!'; } else { echo 'Alles is ok om door te gaan'; } } ?>
Iemand suggesties??
Grtz en alvast bedankt.
|