Hallo,

Ik heb hier een stukje script van een upload beheer systeem.
Waarin één gebruiker zijn of haar map kan verwijderen.
Maar nu is de fout dat wanneer je BV in de url dit typt:
../../(andere gebruiker)
Kan je de gegevens van die gebruiker verwijderen.
Hoe kan ik checken via dit script of het ook daadwerkelijk de map van die gebruiker is die verwijderd gaat worden??

Het script:


if(isset($_GET['remove_folder'])){
	if($_GET['check'] == "ja"){
	
		if (is_dir('./bestanden/'.$_SESSION['gebruikersnaam'].'/'.$_GET['folder'].'')) {
			function delete($file) { 
			 chmod($file,0777); 
			 if (is_dir($file)) { 
			  $handle = opendir($file); 
			  while($filename = readdir($handle)) { 
			   if ($filename != "." && $filename != "..") { 
				delete($file."/".$filename); 
			   } 
			  } 
			  closedir($handle); 
			  rmdir($file); 
			 } else { 
			  unlink($file); 
			 } 
			} 
			delete('./bestanden/'.$_SESSION['gebruikersnaam'].'/'.$_GET['folder'].''); 	
					 
		echo'<center>De map <b>'.$_GET['folder'].'</b> is succesvol verwijderd!<br>
			U wordt doorverwezen naar de verkenner, gebeurt dit niet klik dan <a href="./">hier!</a>
			<meta http-equiv="refresh" content="3;URL=./" />
			';




Alvast bedankt voor de hulp!
Misschien even de waarde controleren?

<?php
if( !empty($_GET['remove_folder'])
&& preg_match('/^[a-z0-9][\w_]*$/i', $_GET['remove_folder']) )
{
# ...
}
?>

Reageren