Toon posts:

[PHP] Ingevoegde image via html check op grootte

Pagina: 1
Acties:

Verwijderd

Topicstarter
Misschien een beetje vage topic-titel, maar ik zal em proberen te verduidelijken:

ik heb een klein nieuwsscriptje geschreven, waarin men met de UBBtags ([ img]) images kan invoegen ed. Echter, de table waarin de data moet worden afgebeeld, is slechts 500 px breed.

Hoe zorg ik ervoor dat ik een width="500" tag invoeg bij plaatjes die breder zijn dan 500.

Ik kan wel overal width="500" bij gaan zetten, maar dan worden de kleinere plaatjes ook weer opgerekt tot 500, wat niet de bedoeling is :(

Ik had al ergens een stukkie code gevonden (javascript), maar ik zou echt niet weten hoe ik dat erbij moet gebruiken:
code:
1
2
3
4
5
6
7
8
9
10
11
12
function SizeImage()
{
    var img = window.event.srcElement;

    if (img.width > 500)
    {
        var src = img.src;
        img.outerHTML = "<A HREF='" + src
                  + "' TARGET='_blank'><IMG SRC='" + src
                  + "' WIDTH='500' BORDER='0'/></A>";
    }
}

Verwijderd

Daar heb je geen javascript voor nodig, php heeft een functie waar jij dat prima mee kan doen: [url="http://www.php.net/manual/en/function.getimagesize.php"]getimagesize()[/url].

Verwijderd

Topicstarter
Ja duh, dat weet ik ook wel :) Maar hoe kun je dat gebruiken bij het doel wat ik wil ?

Users voeren dus via een textarea text in, met die ubbtags en dus die plaatjes erin... Of zou ik moeten gaan zoeken naar die waarde tussen de [img ] tags en dan een getimagesize(plaatje) moeten doen?

De verdere PHP syntax snap ik wel, maar nu stuit ik weer op een probleem: hoe krijg ik de data tussen die [img ] tags in een var?

Verwijderd

Staat allemaal in de manual...

maargoed: je kunt ook gewoon een url gebruiken bij die plaatjes, dus ook een relatief pad (lijkt mij). Je doet dan eerst:
PHP:
1
<?if(getimagesize($file)){...?>

De functie retourneert false als het bestand geen plaatje is... simpel.

Data tussen tags: Maar een var $imgcode oid, die je of leeg laat of vult met width="500".

Verwijderd

Topicstarter
Ja zo ver was ik ook al :)

Maar waar staat dat dan in de manual over die waardes tusen die tags? Ik zoek dat nl. al een aardig tijdje, maar nog steeds niks gevonden :(

Verwijderd

dat staat natuurlijk niet in de manual, niet alles staat erin, dat komt omdat dat eigenlijk makkelijk te verzinnen is met gezond verstand ;).

Wat snap je dan niet wat ik heb gezegd?

Verwijderd

Topicstarter
Op zondag 28 juli 2002 23:56 schreef Lusch het volgende:
dat staat natuurlijk niet in de manual, niet alles staat erin, dat komt omdat dat eigenlijk makkelijk te verzinnen is met gezond verstand ;).

Wat snap je dan niet wat ik heb gezegd?
Ik snap alles wat je heb gezegd, want die getimagesize() was net iets wat ik zocht! :D

Alleen dat deel dat ik die waarde tussen die tags in een var krijg: dat krijg ik maar niet voor mekaar :(

Verwijderd

doe net als ik zei:

maak een variabele die je of geen waarde geeft, of de waarde 'width = "500"'. Die echo je op de plek waar wel (of niet) 'width = "500" moet komen te staan...

Verwijderd

Topicstarter
Dit had ik zelf ook al gedacht: het enige wat ik moet hebben is de waarde tussen de tags: voor de rest kan ik t zelf wel uitvogelen :)

Verwijderd

Op maandag 29 juli 2002 00:16 schreef CowMike het volgende:
Dit had ik zelf ook al gedacht: het enige wat ik moet hebben is de waarde tussen de tags: voor de rest kan ik t zelf wel uitvogelen :)
Dat kun je wel uit je regex halen, heel ander probleem... zoek maar 's specifiek daarnaar. succes :)
Pagina: 1