Avatar billede ossi Nybegynder
20. juni 2003 - 12:57 Der er 13 kommentarer og
2 løsninger

Billeder og upload

Hej,

Jeg har lige en god håndfuld spørgsmål her...

Jeg skal ha en form, hvor man skal kunne uploade et billede...

Billedet skal uploades til en mappe (som jeg angiver via scriptet), men SAMTIDIG, skal der laves en kopi af billedet, bare i en størrelse (height*width) jeg vælger i scriptet, og og dårligere kvalitet...

Hvordan gøres ovenstående?

Så er der noget med at arbejde med filer...

Jeg skal først og fremmest ha et script, som kan tjekke om en mappe indeholder filer.. How?

Dernæst er jeg lidt lost på den her:

Jeg har f.eks. en mappe som indeholder billede.jpg og small_billede.jpg... Nu vil jeg gerne ha den til at læse fra mappen (først se om der er filer i), og dernæst vise small_billede.jpg, med link til billede.jpg... Hvordan gøres dette? Har problemer med at den så vil vise både small_billede.jpg og billede.jpg....
Avatar billede ahv Nybegynder
20. juni 2003 - 13:04 #1
Jeg kan godt lave et lille script til dig, men den med at lave både et stort og lille billede, det er vel ikke nødvendigt, du sætter jo bare width og height til et eller andet på billedet når du vil vise det.

Ala ->
http://www.disneyzone.dk/gall.php

Så skal upload scriptet bare kobles på, det laver jeg lige.
Avatar billede jakoba Nybegynder
20. juni 2003 - 13:05 #2
mht det sidste, se http://dk.php.net/function.opendir

<?php
                  $dir = "/tmp/";

                  // Open a known directory, and proceed to read its contents
                  if (is_dir($dir)) {
                      if ($dh = opendir($dir)) {
                          while (($file = readdir($dh)) !== false) {
                              // $file indeholder nu filerne i den mappe efter tur.
                              if ( substr( $file, 0, 6 ) == "small_" ) {
                                  // dette var en thumbnail. vi stoler på der også er et stort billede
                                  echo "<a href='$dir". substr( $file, 6 ) ."'><imp src='$dir" .$file ."'></a>";
                              }
                          }
                      closedir($dh);
                      }
                  }
                  ?>

mvh JakobA
Avatar billede ossi Nybegynder
20. juni 2003 - 13:06 #3
Nej - det SKAL rezises! Lige nu har vi nemlig en form for gallery hvor den IKKE gør det, og når der er 10 billeder på 300 kb stykket, tager det LANG tid at loade, når man bare sætter height/width.. Så skal den jo hente hele billedet!!!
Avatar billede jakoba Nybegynder
20. juni 2003 - 13:10 #4
ups, jeg stavede <img kommandoen forkert.

ahv >> nu virker din popopkode ikke lige i netscape så jeg ved ikke hvor store dine store billeder er; men generelt er det da lidt tidsspilde at tvinge brugeren til at vente på at alle de store billeder er hentet hvis han kun ønsker at kikke nærmere på eet af dem.
Avatar billede ahv Nybegynder
20. juni 2003 - 13:10 #5
Jeg kan hjælpe dig med et normalt upload script, men det med at rezsize der må jeg melde pas, men der er manfe som har sprugt om det samme ->

http://www.eksperten.dk/kat/2/?searchtype=txt&words=thumbnails&method=and&sort=score&catid=2

Så hvis du kan strikke lidt sammen derfra også med Jakobs så er vi vel ved at være der.
Avatar billede ossi Nybegynder
20. juni 2003 - 13:11 #6
jakoba, hvis nu mappen med billeder pludselig indeholder en anden mappe, så kommer der vel også en mindre fejl?
Avatar billede ahv Nybegynder
20. juni 2003 - 13:16 #7
Prøv måske at se nærmere på ->
http://www.eksperten.dk/spm/106819
Avatar billede ossi Nybegynder
20. juni 2003 - 13:17 #8
http://www.eksperten.dk/spm/69306
^^ der fandt jeg vist noget om det med billederne...

Men hvad med den directory ting? Med at den også vil komme til at vise directorys?
Avatar billede jakoba Nybegynder
20. juni 2003 - 13:23 #9
ossi >> en undermappe vil kun give fejl hvis den udermappe hedder noget der starter med 'small_'. Det er der regel jeg forudsætter, at ALLE dine thumbs har sådan et navn og at INGEN andre filer har det. Så hvis fx nogen prøver at uploade et bille af mønter og siger det billede skal hedde 'small_change.jpg', så må du gøre noget specielt ved det billede, fx kalde det noget andet før du laver thumbnail.

Det der med at lave og overholde nogen faste regler for sine data er ekstremt vigtigt, selvom man sjældent er opmærksom på det når man begynder at programmere.

mvh JakobA
Avatar billede ossi Nybegynder
20. juni 2003 - 13:29 #10
Joh, det er jeg som normalt opmærksomt på.. Havde bare ikk li tænkt over den der -- men tak! Siger mange tak... I har jo begge hjulpet, vil I evt. begge ha point?
Avatar billede ossi Nybegynder
20. juni 2003 - 13:40 #11
Jeg får en fejl:
Warning: imagejpeg: unable to open 'gfx/billede.jpg' for writing in /usr/home/N-club/www/image.php on line 5

Med linien:
ImageJPEG($thumb,'gfx/billede.jpg','45');
Avatar billede jakoba Nybegynder
20. juni 2003 - 13:53 #12
Har du fået oprettet en mappe der hedder gfx ?
har du gjort mappen skrivbar med chmod så du kan oprette nye filer i den ?
Avatar billede ossi Nybegynder
20. juni 2003 - 14:06 #13
Arg... virkede selvf... Gav den chmod 777... men er det optimalt, sikkerhedsmæssigt?

jakoba, opretter du lige et svar så jeg kan give dig lidt point? :)
Avatar billede jakoba Nybegynder
20. juni 2003 - 14:12 #14
du kan lave så det kun er dine php-programmer der kan skrive, fx ved først af sige  chmod( $mappesti, 0777 );  umiddelbart før du indsætter et billede, og så ændre tilbage igen bagefter.

mvh JakobA
Avatar billede jakoba Nybegynder
20. juni 2003 - 14:15 #15
Ps ingen grund til at gøre filerne i den mappe eksekverbare. 0666 er nok til at de kan skrives og læses.
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