ik heb zo dat ze via ubb een plaatje kunnen toevoegen ([ img]http://www.link.to.plaatje.jpg/[ /img]) (de /img en img aan dat { vast ) maar ik wil dat als het voor de mysql word gezet dat die dan gaat checken of het plaatje niet te groot is weet iemand hoe dit werkt. of welke funties ik nodig heb?
Wat je nu doet met je UBB Code kan je dan doen voordat je het plaatje in de DB zet; Je laat dan niet alleen het plaatje zien, maar je vraagt de grootte op van het plaatje.

Maar ik zou het niet zo doen. Ik zou bij het uitvoeren van de UBB Code (dus als je het bericht laat zien) controleren of het plaatje aan je eisen voldoet.

Is het plaatje te groot, dan geef je het plaatje verkleind (door HTML width en height te manipuleren) weer. Is het precies goed of kliener geef je het gewoon weer.
Als het plaatje te groot is kan je er ook nog een pop-up omheen bouwen...

je zou dan zoiets krijgen:

<?php
// Functie om plaatje te controleren
function imageresize($image){
$max = 250;

$img_size = getimagesize($image);

$b = $img_size[0];
$h = $img_size[1];
if($h > $max || $b > $max){
if($h > $b){
$teveel = $h - $max;
$teveelP = $teveel / $h;
$h = $max;
$b = $b - ($b * $teveelP);
$show .= "<img src=\"".$image."\" height=\"".$h."\" width=\"".$b."\" border=\"0\">";
}
if($b > $h){
$teveel = $b - $max;
$teveelP = $teveel / $b;
$b = $max;
$h = $h - ($h * $teveelP);
$show .= "<img src=\"".$image."\" height=\"".$h."\" width=\"".$b."\" border=\"0\">";
}else{
$h = $max;
$b = $max;
$show .= "<img src=\"".$image."\" height=\"".$h."\" width=\"".$b."\" border=\"0\">";
}
}else{
$show = "<img src=\"".$image."\" border=\"0\">";
}
return $show;
}
?>

UBB Code heeft dan de volgende regel:
<?php
$bericht = preg_replace("_\[img\](.*?)\[/img\]_ise"," imageresize('\\1') ", $bericht);
?>

Elwin

Reageren