Gå til innhold

Validere om et bilde er gyldig?


Anbefalte innlegg

Hei, driver å jobber litt med bb-koder.

Jeg vil sjekke om linken man skriver i taggene img er et gyldig bilde. (uten mellomrom)

 

Dette er hva jeg har nå:

'/(\[(?:img|IMG)\])((http\:\/\/[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(?:\/\S*)?(?:[a-zA-Z0-9_])+\.(?:jpg|jpeg|gif|png)))(\[\/(?:img|IMG)\])$/is' => '<img src="\\2">'

 

Prøver å sperre f.eks [ img]http://link.com/test.php[ /img]. Men det er jo bare legge på .png bak .php så inkluderes jo den filen.. Hvordan skal man kunne sperre slike "angrep"?

Endret av Thomas.
Lenke til kommentar
Videoannonse
Annonse

Har en string med tekst. Vil da søke etter alle <img src""> tags og sjekke om bildet er (u)gyldig(getimagesize) før den returnerer alt.

Trenger kun hjelp til denne søkedelen :)

 

Hvis bilde 1 er gyldig viser den det bilde, hvis bilde 2 er ugyldig skal det erstattes med Ugyldig bilde.

 

Koden jeg har nå:

<?php

function BB($x1) {

$bbkode = array('/\[img\](.*?)\[\/img\]/is' => '<img src="$1">');

$tekst = $x1;
$tekst = nl2br(htmlspecialchars(stripslashes(preg_replace(array_keys($bbkode), array_values($bbkode), $tekst))));

var_dump($tekst);

return htmlspecialchars_decode($tekst);

}

$tekst = 'Hei, bilde1: [img=http://www.link.com/index.php]. Bilde2: [img=http://www.link.com/index.php.png]';
echo '<br><br>'.BB($tekst);

/*if(@getimagesize('')) {
	echo 'ok';
}
else {
	echo 'fail';
}*/

?>

Endret av Thomas.
Lenke til kommentar
  • 2 uker senere...

Du er klar over at et gyldig bilde godt kan ha filendelsen .php? (eller hva som helst annet, for den saks skyld)

 

http://www.diskusjon...ttach_id=393968 er f.eks et gyldig JPEG-bilde.

Ja.. Skrev det over..

 

 

Hvis du har lest innleggene vil jeg sjekke med getimagesize etter størrelsen på bildet, hvis man får tak i størrelsen skal bildet vises, hvis det ikke er et bilde vil funksjonen faile. Trenger hjelp der  :)

 

 

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...