![]() ![]() |
Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 86 Pomógł: 0 Dołączył: 21.12.2003 Skąd: Iława Ostrzeżenie: (0%)
|
Mam do Was pytanie:
Czy istnieje mozliwosc w php, napisania skryptu, ktory po kliknieciu na link/obraz_miniature, otworzy mi okno (bez paskow narzedzi itp./same ramki), o wielkosci np. jakiegos obrazka, ktory ma sie wyswietlic w oknie? Tylko zalezy mi na tym, by skrypt sam sprawdzil jaki duzy jest obrazek i otworzyl odpowiednie okno, nie chce recznie edytowac wielkosci okna w linku. |
|
|
|
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 897 Pomógł: 40 Dołączył: 16.12.2003 Skąd: Warszawa Ostrzeżenie: (0%)
|
[php:1:9991026bbb]<?
$file="plik.jpg"; $a = getimagesize($file); echo "szer: $a[0], wys: $a[1]"; ?>[/php:1:9991026bbb] pisałem od ręki, ale powinno działać więcej: getimagesize |
|
|
|
Post
#3
|
|
|
Grupa: Zarejestrowani Postów: 86 Pomógł: 0 Dołączył: 21.12.2003 Skąd: Iława Ostrzeżenie: (0%)
|
Hm, no dziala (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) , ale zupelnie nie o to mi chodzi, skrypt, ktory mi napisales pokazuje wielkosc obrazka, a ja potrzebuje skrypt, ktory bedzie mi otwieral okno, o wielkosci danego obrazka, no i oczywiscie w oknie bedzie ten onrazek. Czy istnieje cos takiego? Po za tym nie chce recznie definiowac wielkosci obrazkow, bo mam bardzo duzo obrazkow do wyswietlenia, a mi zalezy na czasie:)
|
|
|
|
Post
#4
|
|
|
Grupa: Zarejestrowani Postów: 569 Pomógł: 0 Dołączył: 17.08.2003 Skąd: Dąbrowa Górnicza Ostrzeżenie: (0%)
|
proponuje dodac jakies 20px do kazdej wielkosci otrzymanej z getimagesize i otworzenie nowego okienka ale juz poprzez JavaScript przyklad
[php:1:9a3df96703]<?php $size = GetImageSize ($tutaj_sciazka_obrazka); $width = $size[0]+10; $height = $size[1]+10; echo "<a href="java script: OnClick="window.open('".$tutaj_sciazka_obrazka."','img', 'width=".$width.", height=".$height.", menubar=no, scrolling=yes, fullscreen=0');"> <img src="".$tutaj_sciazka_obrazka."" border="0"></a>"; ?>[/php:1:9a3df96703] To jest oczywiscie prosty przyklad, ktory mozna modyfikowac na wiele sposobów, zycze powodzenia (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) |
|
|
|
Post
#5
|
|
|
Grupa: Zarejestrowani Postów: 86 Pomógł: 0 Dołączył: 21.12.2003 Skąd: Iława Ostrzeżenie: (0%)
|
(IMG:http://forum.php.pl/style_emoticons/default/sad.gif) Cos mi nie wychodzi, np. jak mialby wygladac skrypt dla obrazka 03_wikielec.jpg - duzy obrazek, zas miniaturka na ktora klikam to 03_wikielec_small.jpg? Prosze o pomoc, bo jestem zielony w php:(
|
|
|
|
Post
#6
|
|
|
Administrator serwera Grupa: Przyjaciele php.pl Postów: 909 Pomógł: 0 Dołączył: 12.08.2003 Skąd: /var/www/wroclaw.php Ostrzeżenie: (0%)
|
[php:1:2f166b667b]<?php
function pokaz_obrazek($maly, $duzy) { $size = GetImageSize ($duzy); $width = $size[0]+10; $height = $size[1]+10; print '<a href="#" OnClick="window.open('; print "'" . $duzy . "', 'img, '"; print "width=" . $width . ," height=" . $height; print ", menubar=no, scrolling=yes');">"; print '<img src="' . $maly . '" border="0"></a>'; } // dla podanych obrazków zastosuj: pokaz_obrazek("03_wikielec_small.jpg", "03_wikielec.jpg"); ?>[/php:1:2f166b667b] |
|
|
|
Post
#7
|
|
|
Grupa: Zarejestrowani Postów: 897 Pomógł: 40 Dołączył: 16.12.2003 Skąd: Warszawa Ostrzeżenie: (0%)
|
heeeh.. edytowałem później posta i wyciąłem to co powinno jeszcze być (IMG:http://forum.php.pl/style_emoticons/default/rolleyes.gif) co prawda masz już rozwiązania podane, ale chodziło mi to:
[php:1:5ce01cc0c1]<? $file="plik.jpg"; // duży obrazek $a = getimagesize($file); ?> <A HREF="java script:displayWindow('<?= $file ?>',<? echo "$a[0],$a[1]" ?>)"><img src="miniaturka.jpg"></a>[/php:1:5ce01cc0c1] nazwy plików możesz zczytywać np. z tablicy |
|
|
|
Post
#8
|
|
|
Grupa: Zarejestrowani Postów: 86 Pomógł: 0 Dołączył: 21.12.2003 Skąd: Iława Ostrzeżenie: (0%)
|
Niestety, zaden z przykladow, ktore mi podaliscie nie dziala (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) , chcialbym skupic sie na ostatnim przykladzie, ktory napisal "Czachor". Prawie wszystki jest ok, poprawnie pokazuje w linku wielkosc obrazka, tzn. okna, ktore ma sie otworzyc, miniatura takze sie wyswietla, jednak gdy klikam na miniature, wyskakuje blad JavaScript,:
Wiersz: 1 Znak: 1 Błąd: Oczekiwano obiektu Kod: 0 Plik, w ktorym umiescilem skrypt ma rozszerzenie .php, po za przykladem czachora nic wiecej tam nie ma, zadnych innych kodow HTML`a czy innych, zmienilem tylko nazwy plikow, wiec co moze byc nie tak? |
|
|
|
Post
#9
|
|
|
Grupa: Zarejestrowani Postów: 897 Pomógł: 40 Dołączył: 16.12.2003 Skąd: Warszawa Ostrzeżenie: (0%)
|
oki mój błąd (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) mam jakiś zły dzień...
na początku dokumentu wstaw oczywiście funkcję displayWindow: Kod <script language="JavaScript" type="text/javascript">
function displayWindow(url, width, height) { var Win = window.open(url,"displayWindow",'width=' + width + ',height=' + height + ',resizable=0,scrollbars=no,menubar=no' ); }; </script> niektóre przeglądarki czasami wstawiały auomatycznie margines do tego okienka, więc całość trochę się psuła... jeżeli będziesz miał też ten problem, daj znać, zapodam rozwiązanie |
|
|
|
Post
#10
|
|
|
Grupa: Zarejestrowani Postów: 569 Pomógł: 0 Dołączył: 17.08.2003 Skąd: Dąbrowa Górnicza Ostrzeżenie: (0%)
|
[php:1:288fc40997]<script>
function img(img, width, height) { window.open(''+ img +'', 'img' , 'width=' + width + ', height=' + height + ', menubar=no, scrolling=yes, fullscreen=0'); } </script> ... <?php $size = GetImageSize ($tutaj_sciazka_obrazka); $width = $size[0]+10; $height = $size[1]+10; echo "<a href="java script: img(' ".$tutaj_sciazka_obrazka." ' ". $width ." ', ' ".$height." ');"><img src="".$tutaj_sciazka_mini obrazka."" border="0"></a>"; ?>[/php:1:288fc40997] skrypt w javie obsluguje otwarcie okienka o konkretnych rozmiarach, z obrazkiem lub jakims innym plikiem podanym w pierwszym parametrze. Musisz podac rowniez sciezke do pliku, wzgledna lub od glownego katalogu to jest obojetne. Wywołujesz funkcje tak jak w linku. Nie wiem jak ty to przepisujesz skoro nie dziala, ja podalem ci przyklad dzialajacy u mnie. Jak nie bedzie dzialac to podaj swoj kod z wklejonym skryptem. moze masz gdzies blad. |
|
|
|
Post
#11
|
|
|
Grupa: Zarejestrowani Postów: 86 Pomógł: 0 Dołączył: 21.12.2003 Skąd: Iława Ostrzeżenie: (0%)
|
Do "Czachora": Teraz wszystko dziala, tylko prosilbym wlasnie o to rozwiazanie z marginesami, bo naprawde nie wyglada ciekawie w tej chwili (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)
Do "Sh4dow": w miejsce $tutaj_sciazka_obrazka wstawiam nazwe obrazka z rozszerzeniem, gdyz znajduje sie w tym samym miejscu co skrypt, no i nie dziala, probuje tez do tego: $tutaj_sciazka_obrazka przypozadkowac [php:1:5c08582050]<?php $tutaj_sciazka_obrazka = "obraze.jpg"; ?>[/php:1:5c08582050] i tez nie dziala, nie wiem czemu, jako powinien poprawnie wygladac, skrypt dla obrazka obrazek.jpg i miniatury obrazek_small.jpg? |
|
|
|
Post
#12
|
|
|
Grupa: Zarejestrowani Postów: 897 Pomógł: 40 Dołączył: 16.12.2003 Skąd: Warszawa Ostrzeżenie: (0%)
|
oki, więc z tymi marginesami...
Nie jest to chyba najbardziej ekonomiczna metoda, ale nie próbowałem robić lepszej (może ktoś ma myśl, jak to ulepszyć?). Link w zapodanym wyżej kodzie zmieniłem na: Kod <A HREF="javascript:displayWindow('pokaz.php',<? echo "$a[0],$a[1]" ?>)"><img src="miniaturka.jpg"></a>
teraz zawartość pokaz.php: Kod <html>
<head> <title>obrazek</title> </head> <body style="margin: 0px"> <img src="plik.jpg"> </body> </html> Kliknięcie na małym obrazku otwiera okienko z plikiem pokaz.php, który ma zdefiniowane zerowe marginesy i tylko wyświetla właściwy obrazek (plik.jpg). Jeżeli masz więcej obrazków, do linka dostaw jakiś parametr, a w pliku pokaz.php wyświetlaj zależny od parametru obrazek. |
|
|
|
Post
#13
|
|
|
Grupa: Zarejestrowani Postów: 86 Pomógł: 0 Dołączył: 21.12.2003 Skąd: Iława Ostrzeżenie: (0%)
|
No tak dziala, ale do kazdego oddzielnego obrazka musze tworzyc kolejny plik pokaz.php, dalej pokaz2.php itd. na szczescie udalo mi sie rozwiazac ten problem inaczej: w linku definiuje dla szerokosci i dlugosci okna dodatkowo +25px i wyswietla mi okno calkiem przyzwoicie, tak wiec dzieki Ci Czachor za rozwiazanie mojego problemu i tekze dziekuje reszcie, ktora probowala mi pomoc, wasze przyklady pewnie sa poprawne, tylko ja cos mieszam (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) no coz cienki jestem w te klocki, ale dzieki temu forum duzo sie ucze... PS: Napiszcie jak znacie jakies inne rozwiazania, moze w przyszlosci komus sie przydadza, pozdrawiam...
|
|
|
|
Post
#14
|
|
|
Grupa: Zarejestrowani Postów: 897 Pomógł: 40 Dołączył: 16.12.2003 Skąd: Warszawa Ostrzeżenie: (0%)
|
nie musisz tworzyć za każdym razem nowego pliku
ja wyswietlam linki tak.. mam ileś plików np. image1.jpg, image2.jpg..... wtedy modyfikujesz link do okienka : np. do image1.jpg: Kod ....pokaz.php?id=1... (id to kolejny nr obrazka) do image2.jpg:Kod ....pokaz.php?id=2.....
i wtedy pokaz.php:[php:1:5e59b821ab]tutaj nagłówki <img src="image<?= $id ?>.jpg">[/php:1:5e59b821ab] i wtedy Ci wyświetla konketny obrazek |
|
|
|
Post
#15
|
|
|
Grupa: Zarejestrowani Postów: 86 Pomógł: 0 Dołączył: 21.12.2003 Skąd: Iława Ostrzeżenie: (0%)
|
hmm? Fajne rozwiazanie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) , mysle ze sie przyda, nie wiedzialem - a co ja wogole wiem (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) - ze jest taka mozliwosc, dzieki za pomoc..
|
|
|
|
![]() ![]() |
|
Aktualny czas: 24.12.2025 - 23:50 |