Lid |
|
Hey,
Ik weer, ja ik weer ja . Ik heb nu een ubb code voor images gemaakt [image=*hierjeURL*], maar nu wilde ik dus dat als je in die UBB code een image zou doen die breder zou zijn dan 400px, dat hij dan kleiner gemaakt zou worden met een link naar de nieuwe versie.
Nu heb ik dat script gemaakt, maar ik merk dat het ergens in het begin al mis gaat, want ik heb namelijk een standaard nieuwssysteem (cutnews), en ik ben het aant het veranderen totdat het precies doet wat ik wil . In cutenews zit een functie replace_news(), en die vervangt alle UBcode door html. Dus ik zet voordat die functie uitgevoerd word, mijn versie van het script neer (UBtag zoeken, kijken hoe breed hij is en vervangen) maar toch komt er iedere keer bij de uitwerking weer die van cutenews te staan. Dat betekend dus dat mijn expressie niet werkt, want ik heb het wel zo gescript van: Als er gen UB-tags in staan, ga dan door met het script. En als hij door gaat, komt hij dus bij die functie van cutenews die de 'overgeslagen' UB-tag alsnog veranderd in een html tag, maar dan zonder die check of hij niet te breed is!
Ik hoop dat jullie begrijpen waar ik heen wil, ik ben niewt zo goed in het uitleggen van dit soort dingen. Ik zal hier mijn script posten wat ik dus voor de functie van cutenews heb geplaatst:
<?
$expressie = '/^\[image=(.*)\]$/is';
if (eregi($expressie,$output)) {
preg_match_all($expressie,$output,$regex,PREG_SET_ORDER);
$aantal = count($regex);
$aantal = $aantal - 1;
for ($keer = 0; $keer <= $aantal; $keer++) {
$plaatjesurl = $regex[$keer][1];
$plaatjesub = $regex[$keer][0];
$eigenschappen = getimagesize($plaatjesurl);
$hoogte = $eigenschappen[1];
$breedte = $eigenschappen[0];
$factor = $breedte / 400;
if($breedte >= 400) {
$breedte = 400;
$hoogte = $hoogte / $factor;
$plaatjeshtml = '<a href=$plaatjesurl target=_blank><img border=0 src=$plaatjesurl width=$breedte height=$hoogte></a>';
$output = str_replace ($plaatjesub, $plaatjeshtml, $output);
}
else { }
}
}
else { }
//hier komt de functie replace_news van cutenews
?>
<? $expressie = '/^\[image=(.*)\]$/is'; if (eregi($expressie,$output)) { $aantal = $aantal - 1; for ($keer = 0; $keer <= $aantal; $keer++) { $plaatjesurl = $regex[$keer][1]; $plaatjesub = $regex[$keer][0]; $hoogte = $eigenschappen[1]; $breedte = $eigenschappen[0]; $factor = $breedte / 400; if($breedte >= 400) { $breedte = 400; $hoogte = $hoogte / $factor; $plaatjeshtml = '<a href=$plaatjesurl target=_blank><img border=0 src=$plaatjesurl width=$breedte height=$hoogte></a>'; $output = str_replace ($plaatjesub, $plaatjeshtml, $output); } else { } } } else { } //hier komt de functie replace_news van cutenews ?>
|