ugrás a tartalomhoz

file feltoltesnel, nem alfabetikus karakterek torlese

eaposztrof · 2008. Feb. 25. (H), 05.45
ezt muveltem, ha valaki tud mas megoldast is, szivesen veszem
<?php
	function clear_name($image_name){
		$repstring="-";	// azert "-", mert a bot-ok szunetkent kezelik, tehat keresobarat megoldas
		$image_drive=array_shift(explode("\\",$image_name));	// kiszurom a meghajto jelet
		$image_without_drive=preg_replace("/$image_drive/","",$image_name);	// kep neve meghajto nelkul
		$image_without_drive_and_illegal_chars=preg_replace("/[^A-Za-z0-9.]/", $repstring, $image_without_drive);	//	kep neve illegalis karakterek nelkul, a "." meghagyva a kiterjesztesek vegett
		$image_without_drive_and_illegal_chars_and_single_repstring=preg_replace("/$repstring.$repstring/","",$image_without_drive_and_illegal_chars);	// a tobbszori "-"-ek torlese
		return rand(0,1000).$image_without_drive_and_illegal_chars_and_single_repstring;	// fajlnev egyedive tetele random szamokkal
	}
//	print(clear_name($_FILES['image_field']['name'])); // ez a form "image_field" inputjabol alakit
	print(clear_name('D:\clo˛#&@&@{#&@@{verfi#&@@@#&#@#&##kukac###eld-hmed-12p.hlarge#&##kukac##asd.jpg')); // pelda
?>
 
1

egy pcit egyszerűbben, talán...

pp · 2008. Feb. 25. (H), 08.50
<?php
$image_without_drive_and_illegal_chars=preg_replace("/[^A-Za-z0-9.]/", $repstring, $image_without_drive);   //  kep neve illegalis karakterek nelkul, a "." meghagyva a kiterjesztesek vegett 
         $image_without_drive_and_illegal_chars_and_single_repstring=preg_replace("/$repstring.$repstring/","",$image_without_drive_and_illegal_chars);  // a tobbszori "-"-ek torlese 
?>
helyette:

<?php
     $image_without_drive_and_illegal_chars=preg_replace("/[^A-Za-z0-9.]+/", $repstring, $image_without_drive);   
?>
(a meghajtó jel szűrését nem értem, a példára biztos nem jó...)
pp