Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> getimagesize, nie rozumiem tego.. wytlumaczy mi to ktos?
-zielonytyp-
post
Post #1





Goście







jak w temacie.. kompletnie nie rozumiem o co chodzi w getimagesize" title="Zobacz w manualu php" target="_manual .. zagladalem do manuala i tak nic z tego nie rozumiem ;/ pomoze mi ktos i wytlumaczy krok po kroku co i jak?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 9)
skowron-line
post
Post #2





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

Ostrzeżenie: (0%)
-----


  1. <?php
  2. list($width, $height, $type, $attr) = getimagesize("$foto");
  3. ?>

i wszystko jasne pobierasz liste zmiennych takich jak sa napisane


--------------------
I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy.

QueryBuilder, Mootools.net, bbcradio1::MistaJam
http://www.phpbench.com/
Go to the top of the page
+Quote Post
lukir
post
Post #3





Grupa: Zarejestrowani
Postów: 86
Pomógł: 0
Dołączył: 6.08.2004
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Ta funkcja zwraca 4 elementową tablicę:
1) Index 0 zawiera szerokość obrazka w pikselach;
2) Index 1 zawiera wysokość obrazka w pikselach;
3) Index 2 ma następujące wartości (w zależności od tego, jakie jest rozszerzenie pliku):
  • 1 = GIF,
  • 2 = JPG,
  • 3 = PNG,
  • 4 = SWF,
  • 5 = PSD,
  • 6 = BMP,
  • 7 = TIFF(intel byte order),
  • 8 = TIFF(motorola byte order),
  • 9 = JPC,
  • 10 = JP2,
  • 11 = JPX,
  • 12 = JB2,
  • 13 = SWC,
  • 14 = IFF,
  • 15 = WBMP,
  • 16 = XBM.
Te wartości są analogiczne do stałej IMAGETYPE dodanej w php 4.3.0.

4) Index 3 jest to ciąg tekstu: height="yyy" width="xxx" , który może być bezpośrednio użyty do wstawienia w tagu IMG.

Oto przykład tych właściwości:
  1. <?php
  2. //ścieżka do pliku obrazka o wymiarach 200x300 pikseli:
  3. $img = "/path/grafika.gif";
  4. $info = getimagesize($img);
  5.  
  6. echo "1)".$info[0]." pikseli<br>";
  7. echo "2)".$info[1]." pikseli<br>";
  8. echo "3)rozszerzenie ".$info[2]."<br>";
  9. echo "4) <img src="".$img." ".$info[3]."><br>";
  10. ?>

Wynikiem tego skryptu będzie taki HTML:
  1. 1)200 pikseli<br>
  2. 2)300 pikseli<br>
  3. 3)rozszerzenie GIF<br>
  4. 4) <img src="/path/grafika.gif" height="300" width="200"><br>

To tyle smile.gif

Ten post edytował lukir 16.08.2006, 20:10:24


--------------------
"Tylko myśl dojrzała i jasna daje się wypowiedzieć w słowach prostych" - prof. Witold Doroszewski
Warsztat: os: Windows XP, serwer: Apache 2.0.55, php: 5.1.4, baza danych: MySQL 4.1.7.
Go to the top of the page
+Quote Post
-zielonytyp-
post
Post #4





Goście







dziekuje slicznie smile.gif
Go to the top of the page
+Quote Post
-Gość-
post
Post #5





Goście







lukir .. wytestowalem Twoj przykladowy skrypt aby sprawdzic co i jak
  1. 1)2608 pikseli<br>
  2. 2)1952 pikseli<br>
  3. 3)rozszerzenie 2<br>
  4. 4) <img src="../duze.jpg" height="2608 " width="1952 "><br>


moje pytanie.. dlaczego pokazalo sie tekst "rozszerzenie 2" a nie "rozszerzenie JPG" jak to zmienic aby bylo JPG a nie 2 ?snitch.gif
Go to the top of the page
+Quote Post
lukir
post
Post #6





Grupa: Zarejestrowani
Postów: 86
Pomógł: 0
Dołączył: 6.08.2004
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


A no tak - sorki... Tak będzie OK:
  1. <?php
  2. //ścieżka do pliku obrazka o wymiarach 200x300 pikseli:
  3. $img = "/path/grafika.gif";
  4. $info = getimagesize($img);
  5.  
  6. if(strlen($info[2])==1) 
  7. $info[2] = '0'.$info[2];
  8.  
  9. $numbers = array('01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12', '13', '14', '15', '16');
  10. $extensions = array('GIF', 'JPG', 'PNG', 'SWF', 'PSD', 'BMP', 'TIFF(intel byte order)', 
  11. 'TIFF(motorola byte order)', 'JPC', 'JP2', 'JPX', 'JB2', 'SWC', 'IFF', 'WBMP', 'XBM');
  12.  
  13. $info[2] = str_replace($numbers, $extensions, $info[2]);
  14.  
  15. echo "1)".$info[0]." pikseli<br>";
  16. echo "2)".$info[1]." pikseli<br>";
  17. echo "3)rozszerzenie ".$info[2]."<br>";
  18. echo "4) <img src="".$img." ".$info[3]."><br>";
  19. ?>


Ten post edytował lukir 16.08.2006, 20:56:27


--------------------
"Tylko myśl dojrzała i jasna daje się wypowiedzieć w słowach prostych" - prof. Witold Doroszewski
Warsztat: os: Windows XP, serwer: Apache 2.0.55, php: 5.1.4, baza danych: MySQL 4.1.7.
Go to the top of the page
+Quote Post
-Gość-
post
Post #7





Goście







teraz wyswietla sie JPG smile.gif ale.. jest problem z obrazkiem.. nie pokazuje sie.. hym.. klikam na jego wlasciwosci a tam pokazuje link do obrazka taki: "http://mojserwer/duze.jpg%20width=" dlaczego?
Go to the top of the page
+Quote Post
lukir
post
Post #8





Grupa: Zarejestrowani
Postów: 86
Pomógł: 0
Dołączył: 6.08.2004
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


To kod php, który na pewno działa (testowałem):

  1. <?php
  2. //ścieżka do pliku obrazka o wymiarach 200x300 pikseli:
  3. $img = "sklepmetro/images/bad.gif";
  4. $info = getimagesize($img);
  5.  
  6. if(strlen($info[2])==1)
  7.  $info[2] = '0'.$info[2]; 
  8.  
  9. $numbers = array('01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12', '13', '14', '15', '16');
  10. $extensions = array('GIF', 'JPG', 'PNG', 'SWF', 'PSD', 'BMP', 'TIFF(intel byte order)', 'TIFF(motorola byte order)', 
  11. 'JPC', 'JP2', 'JPX', 'JB2', 'SWC', 'IFF', 'WBMP', 'XBM');
  12.  
  13. $info[2] = str_replace($numbers, $extensions, $info[2]);
  14.  
  15. echo "1)".$info[0]." pikseli<br>";
  16. echo "2)".$info[1]." pikseli<br>";
  17. echo "3)rozszerzenie ".$info[2]."<br>";
  18. echo "4) <img src="".$img."" ".$info[3]."><br>";//tutaj był błąd ;)
  19. ?>


Ten post edytował lukir 16.08.2006, 21:08:14


--------------------
"Tylko myśl dojrzała i jasna daje się wypowiedzieć w słowach prostych" - prof. Witold Doroszewski
Warsztat: os: Windows XP, serwer: Apache 2.0.55, php: 5.1.4, baza danych: MySQL 4.1.7.
Go to the top of the page
+Quote Post
-Gość-
post
Post #9





Goście







o teraz dziala smile.gif .. w przedostatniej linijce bylo:
  1. echo "4) <img src=\"".$img." ".$info[3]."><br>";

a powinno byc
  1. echo "4) <img src=\"".$img."\" ".$info[3]."><br>";


dziekuje smile.gif
Go to the top of the page
+Quote Post
musiek86
post
Post #10





Grupa: Zarejestrowani
Postów: 118
Pomógł: 0
Dołączył: 22.03.2008

Ostrzeżenie: (0%)
-----


Przepraszam ze odkopuje temat ale mam problem powiązany z tematem. Mam skrypt uploadu obrazków i jako jedno z założeń chcę by plik dodawany miał max 100px wysokości i max 300px szerokości. Z tego co to przeczytałem powinno zadziałać to:
  1. $img = "path/to/blank.gif";
  2. $info = getimagesize($img);
  3. if (isset($_POST['submit'])) {
  4. if ($info[0] > 300) $error .= "Obrazek za szeroki!<br />"; //szerokosc
  5. if ($info[1] > 100) $error .= "Obrazek jest za wysoki!<br />"; //wysokosc
  6. if (!$error) {
  7. echo "Obrazek dodano";
  8. }
  9. else
  10. {
  11. echo "<b>Wystapiły następujace błędy:</b><br />
  12. ".$error."
  13. <b>Obrazek nie mógł zostać dodany</b><br />
  14. <br />";
  15. }
  16.  

Niestety pomimo iż dodaje obrazek wiekszy niż szer = 300 bo moj ma 350 to i tak dodaje. Co jest nei tak?
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 11:37