nouncad at mayetlite dot com posted a function that uploaded a file,
and would rename it if it already existed, to filename[n].ext
It only worked for files with extensions exactly three letters long, so
I fixed that (and made a few other improvements while I was at it).
// Usage: uploadfile($_FILE['file']['name'],'temp/',$_FILE['file']['tmp_name'])
function uploadfile($origin, $dest, $tmp_name)
{
$origin = strtolower(basename($origin));
$fulldest = $dest.$origin;
$filename = $origin;
for ($i=1; file_exists($fulldest); $i++)
{
$fileext = (strpos($origin,'.')===false?'':'.'.substr(strrchr($origin, "."), 1));
$filename = substr($origin, 0, strlen($origin)-strlen($fileext)).'['.$i.']'.$fileext;
$fulldest = $dest.$newfilename;
}
if (move_uploaded_file($tmp_name, $fulldest))
return $filename;
return false;
}
?>