Avatar billede mazey Praktikant
22. februar 2005 - 16:40 Der er 13 kommentarer og
1 løsning

Et spørgsmål om billeder med php

Hejsa... Jeg har et tidligere spørgsmål, som jeg egentlig har fået besvaret ( http://www.eksperten.dk/spm/591267 ), dog har jeg lidt yderligere spørgsmål til det (som jeg også stillede), men endnu ikke har fået svar på. Derfor starter jeg nu et nyt spørgsmål med flere point.
I ovenstående spørgsmål har jeg fået lavet lidt kode som skifter billede randomly (meget flink ekspert som hjalp :)
Jeg mangler dog at finde ud af flg:

1. fremviseren virker, men hvis jeg har en tabel med 3 felter som hver skal vise et billede, hvordan gør jeg så det, så jeg undgår at den viser de samme billeder i felterne?

2. I et galleri hvor koden henter alle billeder i en mappe, hvordan laver jeg det så, så billederne eksempelvis er sat til en fast størrelse (ex. width="100" og height="100")?
Kan man f.eks. lave en slags resizer, som skalerer billederne ned, så de heller ikke fylder så meget!?

Jeg håber nogle af jer eksperter kan hjælpe mig hurtigt! :)
Avatar billede sone Nybegynder
22. februar 2005 - 16:47 #1
2. Fylder så meget... fysisk eller i præsentation?
Avatar billede mazey Praktikant
22. februar 2005 - 16:51 #2
Det kan jo ske at man har et billede som er 2048x1600 el. lign, som der så ville blive skaleret ned til 100x100, så er billedet vel stadigt fysisk stort, så load tiden ville være den samme!?, så jeg ved ikke om man skal lave sådan noget kode, som kan resize billederne til thumbnails!?
Avatar billede Slettet bruger
22. februar 2005 - 16:53 #3
Du kan udvælge n random elementer fra dit array med funktionen array_rand()

Jeg har for nogen tid siden lavet en resize funktion der i hvert fald virker på jpg billeder:

    // Resize function
    function resize_jpg($img,$w,$h) {
   
    //  $thumb = imagecreatetruecolor ($w, $h);
      $thumb = imagecreatetruecolor ($w, $h);
      $image = ImageCreateFromJpeg($img);
   
      $imagedata = getimagesize($img);
   
      imagecopyresized ($thumb, $image, 0, 0, 0, 0, $w, $h, $imagedata[0], $imagedata[1]);
      imagejpeg($thumb, $img);
    }

Den bruger du så ved:

resize_jpg(billede, ønsket bredde, ønsket højde);

--
pacroon
Avatar billede Slettet bruger
22. februar 2005 - 16:55 #4
Hov, den udkommenterede imagecreatetruecolor kan du så se bort fra :)
Avatar billede mazey Praktikant
22. februar 2005 - 16:57 #5
Ok... Jeg må jo erkende at jeg ikke er nogen gammel haj til det her, derfor er jeg heller ikke sikker på hvordan det skal bruges, det du har skrevet.... kan det ikke lade sig gøre at programmere videre i de 2 kode eksempler som allerede er lavet!?
Avatar billede Slettet bruger
22. februar 2005 - 17:12 #6
Det her burde vise tre forskellige billeder hver gang:
http://pacroon.dk/projects/randompics/random.php
Avatar billede Slettet bruger
22. februar 2005 - 17:13 #7
Jeg tror det er bedre at implemtere resize-scriptet når billederne uploades.
Ellers vil billederne bliver resizet til nxn pixels HVER gang siden loades - og det er vel ikke hensigten :)
Avatar billede Slettet bruger
22. februar 2005 - 17:20 #8
http://pacroon.dk/projects/randompics/uploadandresize.phps - Dette script kan uploade og resize dine billeder.

I hvert fald hvis de er jpgs.

--
pacroon
Avatar billede mazey Praktikant
22. februar 2005 - 18:09 #9
Jeg har accepteret dine svar... det var meget brugbart, så det takker jeg for....
Jeg har dog 2 sidste spørgsmål....
Kan man så lave den kode om, så man kan slette filer fra den mappe!?
Og kan det lade sig gøre at den uploader gemmer 2 kopier af billederne, sådan så billedet kan benyttes som thumbnail!? (nr. 2 kopi af billedet, vil så være den originale størrelse)

Håber du vil svare
Avatar billede Slettet bruger
22. februar 2005 - 18:41 #10
Jeg har rettet http://pacroon.dk/projects/randompics/uploadandresize.phps så den burde lave en kopi der hedder "billednavn_large" der ikke bliver manipuleret.

http://pacroon.dk/projects/randompics/gallery.phps - er redigeret så du kan slette filerne.

:) Pacroon
Avatar billede Slettet bruger
22. februar 2005 - 18:42 #11
- du skal forresten huske at chmodde gallery.php filen samt det dir du sletter i. (/billeder/)
Avatar billede mazey Praktikant
22. februar 2005 - 19:19 #12
Ok... Jeg er meget glad for din hjælp... skal nok også lige give dig maksimum i karma...
Det du lavede med at den gemte billedet som thumbnail og som original fungerer også, men kan man linke til det billede, ellers er der ingen idé i det, jo! :)
(hvis du vil have flere point, kan jeg lave et nyt spørgsmål!?)
Avatar billede Slettet bruger
23. februar 2005 - 01:01 #13
Det er helt i orden med disse points :)

Jeg forstår ikke helt hvad du mener med om man kan linke.. men hvis du vil manipulere med den måde billederne bliver vist kan du sådan set bare lege rundt med de steder den echo'er det der bliver vist.

Men ellers må du lige forklare :)
Avatar billede mazey Praktikant
23. februar 2005 - 20:00 #14
Hvis du samler point, så skal du altså sige til, for jeg smider gerne 100 flere i potten ! :)

Det jeg mener er, som det tidligere blev lavet, lavede du det sådan så hvert billede blev gemt i thumbnail størrelse og i original størrelse. Det jeg så mener er at på den side hvor man ser alle billederne (som thumbnails), kunne det være fedt at kunne klikke på dem, hvorpå man så så dem i fuld størrelse.... ellers er ideen med 2 forskellige størrelser egentlig underordnet, hvis det ikke lader sig gøre.... :)

Jeg har selv svært ved at forklare det, så hvis du stadig er i tvivl, så skriv! :)
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