Voor mn uploadscript heb ik een file extentie checker gemaakt:
<?
if (!ereg("(.gif|.jpg)$", $_FILES['image']['name'], $extensie))
{
echo "Dit bestandstype is <b>niet</b> toegestaan!";
exit;
}
?>

Maar nu zag ik ergens anders dat iemand ipv
"(.gif|.jpg)$", "((.gif|.jpg)$)" <- dit had gedaan.
Kan iemand mij het verschil uitleggen?
Ik weet waar die haakjes voor staan maar dat maakt hier tog niets uit?
Het maakt niets uit.
die ( en ) zijn d8 ik alleen om te lezen :/ kan het mis hebben hoor..
Bas dat heb je mis ;)

Allereerst kan je hier beter preg_match voor gebruiken dat is een snellere functie dan de ereg functies ...

de () in een syntax pattern staan voor groepen... dit heb je eigenlijk niet nodig bij het zoeken of iets aanwezig is maar bij vervangen geven ze aan welke stukken je wilt terug laten komen ...

bijv. preg_replace('\((.*)site.com)\'i, '\\0'.$urltoevoeging, $tekst);

hierbij staat \\0 voor alles \\1 voor het wat er voor site.com stond etc etc ...

Maar even terug naar je voorbeeld.. er is een makkelijkere manier om te checken of het een plaatje is ..

$type = array('image/pjpeg','image/gif','image/png');
if(in_array(@$uploadedfile_type,$type))
{
echo 'het is een plaatje';
}
else{
echo 'geen plaatje';
}

Reageren