<?php
$upload_dir = $_SERVER['DOCUMENT_ROOT'].'/upload/';
if (isset($_FILES['datei']))
{
if(is_uploaded_file($_FILES['datei']['tmp_name']))
{
$datei = $upload_dir.$_FILES['datei']['name'];
$dateiname = $_FILES['datei']['name'];
if(file_exists($datei))
{
$file = "count.txt";
$fp = fopen($file,"r");
$count = fread($fp,filesize($file));
fclose($fp);
$help = explode("|",$count);
$lastFileName = $help[1];
if($dateiname == $lastFileName)
{
$dateiname = explode(".",$_FILES['datei']['name']);
$addedNum = getCount();
incCount($addedNum);
$dateiname[0] .= $addedNum.".";
$datei = $upload_dir.$dateiname[0].$dateiname[1];
$filename = $dateiname[0].$dateiname[1];
echo '<span style="color:red">Dateiname bereits vorhanden!</span> Die Datei wurde unter '.$filename.' abgespeichert!';
} else {
$file = "count.txt";
$fp = fopen($file,"w");
$offset = 0;
for($i=1; $i<10; $i++)
{
$dateiname = explode(".",$_FILES['datei']['name']);
$dateiname[0] .= "_".$i.".";
$dateiname = $upload_dir.$dateiname[0].$dateiname[1];
if(file_exists($dateiname))
{
$offset = $i+1;
} else {
$i=101; //Einfach zum Zweck, dass man aus der Schleife kommt
}
}
if($offset == 0)
{
$name = "_1|".$_FILES['datei']['name'];
$datei = $_FILES['datei']['name'];
} else {
$name = "_".$offset."|".$_FILES['datei']['name'];
}
fwrite($fp,$name);
fclose($fp);
$dateiname = explode(".",$_FILES['datei']['name']);
$addedNum = getCount();
incCount($addedNum);
$dateiname[0] .= $addedNum.".";
$datei = $upload_dir.$dateiname[0].$dateiname[1];
$filename = $dateiname[0].$dateiname[1];
echo '<span style="color:red">Dateiname bereits vorhanden!</span> Die Datei wurde unter '.$filename.' abgespeichert!';
}
} else {
$file = "count.txt";
$fp = fopen($file,"w");
$name = "_1|".$_FILES['datei']['name'];
fwrite($fp,$name);
fclose($fp);
}
if (move_uploaded_file($_FILES['datei']['tmp_name'], $datei))
{
echo '<p>Upload erfolgreich</p>';
}
}
}
function getCount()
{
$file = "count.txt";
$fp = fopen($file,"r");
$count = fread($fp,filesize($file));
$count = explode("|",$count);
fclose($fp);
return $count[0];
}
function incCount($anz)
{
$file = "count.txt";
$count = substr($anz,1);
$count++;
$fp = fopen($file,"w");
$name = "_".$count."|".$_FILES['datei']['name'];
fwrite($fp,$name);
fclose($fp);
}
?>