$target_dir = "uploads/";
$target_file = $target_dir . basename($_FILES["logoHeader"]["name"]);
//new line
$target_file = checkName($target_file);
//end new line
$imageFileType = strtolower(pathinfo($target_file,PATHINFO_EXTENSION));
//your code
и добавьте функцию checkName
function checkName($name){
if(preg_match("`^[-0-9A-Z_\.]+$`i",$name)){
return $name;
}else{
$name = str_replace(' ', '%20', $name);
return $name;
}
Но вы все равно не избавлены от других «непонятных» персонажей. Как вы дадите файл, если его имя содержит символы, которые не разрешены для URL? Например: ÆÞΔΦÜЩЫž.jpg
Попробуйте найти больше информации о URL slug;)