Hoi mensen,

ik ben bezig met een systeem, en ik zou graag willen dat via een php script de afbeeldingen worden geladen. dus dat je bv met img.php?file=img.gif die afbeelding krijgt.

Nou heb ik dit geprobeerd met include($file); maar dat werkt blijkbaar niet. Weet iemand toevallig hoe dit wel moet?
En nu met functie getimagesize voor mime controle, met dank aan Gamer13

<?php
# Grijp plaatje met eventueel 1 directory ervoor
if( empty($_GET['i'])
|| !preg_match('/^(\w+\/)?([\w\-_]+\.(jpeg|jpg|jpe|gif|png))$/i', strtolower($_GET['i']), $aMatch) )
{
//echo 'GET ERROR';
return;
}

list(,$sPath, $sImageName, $sExtension) = $aMatch;

/*echo '$sPath: ', $sPath,
'<br />$sImageName: ', $sImageName,
'<br />$sExtension: ', $sExtension;
exit;*/

# Mime controle
if( !($aResult = @getimagesize($_GET['i']))
|| !in_array($aResult['mime'], array('image/gif','image/jpg','image/jpeg','image/png')) )
{
//echo 'MIME ERROR';
return;
}

# Als extensie begint met een "j" verander de extensie dan in "jpeg"
if( $sExtension[0] == 'j' )
{
$sExtension = 'jpeg';
}

# image/jpeg jpeg jpg jpe
# image/gif gif
# image/png png
header('Content-type: image/' . $sExtension);
@readfile($_GET['i']);
?>

Reageren