Avatar billede wumpus Nybegynder
06. maj 2009 - 22:28 Der er 12 kommentarer og
1 løsning

Funktion i anden funktion (begynderspørgsmål)

(Jeg ved stort set intet om PHP, men håber at nogen vil hjælpe lidt alligevel).

Jeg har en funktion, der hedder:

<img src="<?php echo getphpthumburl('/wp-content/uploads/image.jpg', 'h=90&w=90&zc=1'); ?>" />

Som tager /wp-content/uploads/image.jpg og giver en resizet version.

Men i stedet for et bestemt billede vil jeg gerne arbejde med det billede som funktionen <?php echo catch_that_image() ?> returnerer.

Jeg tænkte så at jeg kunne udskifte /wp-content/uploads/image.jpg med <?php echo catch_that_image() ?> - men den går vist ikke.

Er det fordi jeg dermed gør noget fundamentalt ulovligt? Kan nogen give mig et godt tip?

Tak.
Avatar billede jakobdo Ekspert
07. maj 2009 - 10:13 #1
Du kan måske lave:

<img src="<?php echo getphpthumburl(catch_that_image(), 'h=90&w=90&zc=1'); ?>" />
Avatar billede wumpus Nybegynder
07. maj 2009 - 10:31 #2
Tak for forslaget. Det virker desværre ikke - den genererede HTMLn stopper med <img src="
Avatar billede jakobdo Ekspert
07. maj 2009 - 10:37 #3
Hvad giver funktionen:

catch_that_image(), hvis du bare skriver:

echo 'Catch_that_image = "' . catch_that_image() . '"<br />';
Avatar billede wumpus Nybegynder
07. maj 2009 - 10:44 #4
Ved at indsætte

<?php echo 'Catch_that_image = "' . catch_that_image() . '"<br />'; ?>

(Jeg går ud fra at det skal formateres sådan)

Får jeg i HTML'en:

Catch_that_image = "http://www.filmupdate.dk/wp-content/uploads/2009/04/anna_2_649.jpg"<br />

Hvor billedstien ser ud til at være fin nok.
Det kan altså ses på http://www.filmupdate.dk/?s=trier (jeg lader fejlen stå lidt endnu).
Avatar billede jakobdo Ekspert
07. maj 2009 - 10:51 #5
Problemet kan måske være din thumb ikke kan arbejde med fulde stier.

Så vi skal måske have fjernet: http://www.filmupdate.dk/ fra catchthatimage()

Hvad skete der, hvis du lavede:
img src="<?php echo getphpthumburl(catch_that_image(), 'h=90&w=90&zc=1'); ?>" />

Og test evt.:

img src="<?php echo getphpthumburl(str_replace('http://www.filmupdate.dk/','',catch_that_image()), 'h=90&w=90&zc=1'); ?>" />
Avatar billede wumpus Nybegynder
07. maj 2009 - 11:56 #6
Tak for ideerne, endnu engang.

<img src="<?php echo getphpthumburl(catch_that_image(), 'h=90&w=90&zc=1'); ?>" />

giver en HTML-side der slutter med
<img src="

Og <img src="<?php echo getphpthumburl(str_replace('http://www.filmupdate.dk/','',catch_that_image()), 'h=90&w=90&zc=1'); ?>" /> 

Giver samme resultat. Øv.
Avatar billede jakobdo Ekspert
07. maj 2009 - 12:04 #7
Hvad hvis du manuelt skriver:

img src="<?php echo getphpthumburl('/wp-content/uploads/2009/04/anna_2_649.jpg', 'h=90&w=90&zc=1'); ?>" />
Avatar billede wumpus Nybegynder
07. maj 2009 - 12:11 #8
Det giver samme resultat. Altså <img src="
Avatar billede jakobdo Ekspert
07. maj 2009 - 12:17 #9
Er du sikker på funktionen: getphpthumburl() virker overhovedet ?
Avatar billede wumpus Nybegynder
07. maj 2009 - 12:30 #10
Ups - du har fuldstændig ret - jeg var kommet til at afmontere den funktion :-(
Og med <img src="<?php echo getphpthumburl(catch_that_image(), 'h=110&w=130&zc=1'); ?>" />
ser det ud til at virke præcist som det skal.

Tusind tak! Det var virkelig hjælpsomt og brugbart.
Avatar billede wumpus Nybegynder
07. maj 2009 - 12:31 #11
Og hvis du skriver et svar, så giver jeg meget gerne point (selvom det vist blot er en dråbe i havet :-))
Avatar billede jakobdo Ekspert
07. maj 2009 - 12:43 #12
Svar!
Avatar billede jakobdo Ekspert
07. maj 2009 - 13:07 #13
Takker for point.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester