Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Nadpisywanie obrazka
pm161
post 27.05.2014, 07:32:58
Post #1





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 7.06.2013

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


Witam!

Mam zamiar zabrać się za skrypt, który nadmieni z przykładowo 40 poszczególnych obrazków jeden, GŁÓWNY.

Dla przykładu

Mam 40 różnych obrazków o nazwach od 1 do 40 *.jpg

I jeden główny.jpg

Chciałbym aby skrypt losował jeden z tych 40 obrazków, kopiował i wklejał go jako główny.jpg. Chodzi oto, aby się nie kasował. By za jakiś czas ponownie mógł się nadpisać.

Wszystko było by podpisane pod crona.

Pojęcie o php jakieś tam mam. Googlowałem, ale jednak nie wiem od czego zacząć wink.gif
Proszę o pomoc.
Go to the top of the page
+Quote Post
SaMi
post 27.05.2014, 07:46:04
Post #2





Grupa: Zarejestrowani
Postów: 173
Pomógł: 14
Dołączył: 27.03.2004
Skąd: Białystok

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


Sam sobie odowiedziałeś na pytanie.
Cytat
... Mam 40 różnych obrazków o nazwach od 1 do 40 *.jpg ....
... Chciałbym aby skrypt losował jeden z tych 40 obrazków, kopiował i wklejał go jako główny.jpg , kopiował i wklejał go jako główny.jpg.


Losujesz liczbę od 1 do 40, przypisujesz ją do nazwy pliku i sprawdzasz czy taki plik istnieje (albo pobierasz listę plików z danego katalogu i wtedy wybierasz z tablicy losowo jeden rekord) jeśli istnieje, kopiujesz poddajesz obróbce (np. zmiana rozdzielczosci)
i zapisujesz pod nazwą np. tytulowy.jpg


--------------------
Zapraszam na spływy kajakowe rzekami podlasia www.splywy-kajakiem.pl
Go to the top of the page
+Quote Post
trueblue
post 27.05.2014, 07:46:31
Post #3





Grupa: Zarejestrowani
Postów: 6 767
Pomógł: 1824
Dołączył: 11.03.2014

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


rand() i copy()


--------------------
Go to the top of the page
+Quote Post
pm161
post 27.05.2014, 08:07:11
Post #4





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 7.06.2013

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


  1. <?php
  2. $nazwa = rand(1, 40);
  3.  
  4. $plik = ''.$nazwa.'.jpg';
  5. $nowyplik = 'glowny.jpg';
  6.  
  7. if (!copy($plik, $nowyplik)) {
  8. echo "Zamiana $plik, nie powiodła się";
  9. }
  10. ?>


Wytworzyłem na szybko taki kod. Było by ok? Niestety teraz sprawdzić nie mogę.

Ten post edytował pm161 27.05.2014, 08:09:24
Go to the top of the page
+Quote Post
SaMi
post 27.05.2014, 08:30:54
Post #5





Grupa: Zarejestrowani
Postów: 173
Pomógł: 14
Dołączył: 27.03.2004
Skąd: Białystok

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


Tak, to co napisałeś powinno zadziałać
tylko drobna sugestia, zamiast
  1. $plik = ''.$nazwa.'.jpg';

wystarczy
  1. $plik = $nazwa.'.jpg';


--------------------
Zapraszam na spływy kajakowe rzekami podlasia www.splywy-kajakiem.pl
Go to the top of the page
+Quote Post
pm161
post 27.05.2014, 08:54:24
Post #6





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 7.06.2013

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


Dziękuję za poprawienie smile.gif

Ok, losowanie obrazka by było. A teraz jakbym chciał, żeby przy każdym wywołaniu, obrazek który się nadmieni jest według kolejności?

pierwsze wywołanie - 1.jpg , drugie - 2.jpg

Pętla?
Go to the top of the page
+Quote Post
markuz
post 27.05.2014, 09:39:58
Post #7





Grupa: Zarejestrowani
Postów: 1 240
Pomógł: 278
Dołączył: 11.03.2008

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


Sesje.


--------------------
Go to the top of the page
+Quote Post
pm161
post 27.05.2014, 12:52:05
Post #8





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 7.06.2013

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


Nie miałem z tym nigdy do czynienia sad.gif Jakieś propozycje? Chodzi o przykładowy kod.
Go to the top of the page
+Quote Post
markuz
post 27.05.2014, 12:58:04
Post #9





Grupa: Zarejestrowani
Postów: 1 240
Pomógł: 278
Dołączył: 11.03.2008

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


klik


--------------------
Go to the top of the page
+Quote Post
pm161
post 27.05.2014, 13:04:28
Post #10





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 7.06.2013

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


Nie rozumiem co by to miało wspólnego z wywoływaniem cron...
Go to the top of the page
+Quote Post
markuz
post 27.05.2014, 13:06:59
Post #11





Grupa: Zarejestrowani
Postów: 1 240
Pomógł: 278
Dołączył: 11.03.2008

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


A w jaki sposób twój skrypt ma wiedzieć które zdjęcie wyświetlić? Czy 1 czy 8 czy też 15? Musisz utworzyć sesje przechowywującą ten numer i przy każdym wywołaniu skryptu powiększać ją (dopóki nie osiągnie maksymalnej wartości - wtedy zmieniejasz ją do 0 lub 1 (w zależności od tego jak napiszesz skrypt)).


--------------------
Go to the top of the page
+Quote Post
pm161
post 27.05.2014, 14:05:22
Post #12





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 7.06.2013

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


  1.  
  2. if (!isset($_SESSION['count']) or $_SESSION['count'] ==40)
  3. {
  4. $_SESSION['count'] =1;
  5. }
  6. else
  7. {
  8. $_session ['count'] ++;
  9. }
  10.  
  11.  
  12. echo 'Strona odczytana '.$_SESSION['count'].' razy w ciągu tej sesji';


Zrobiłem na razie tak, aby po 40 na nowo liczyło. Lecz niestety licznik zatrzymuje się na 1 sad.gif
Go to the top of the page
+Quote Post
Xart
post 27.05.2014, 14:11:55
Post #13





Grupa: Zarejestrowani
Postów: 267
Pomógł: 6
Dołączył: 8.04.2013

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


  1. $_SESSION['count'] =1;
  2. }
  3. else
  4. {
  5. $_SESSION['count'] ++;


a nie dajesz spacje przed tablicą...
$_session ['count'] ++;

Ten post edytował Xart 27.05.2014, 14:12:44
Go to the top of the page
+Quote Post
Turson
post 27.05.2014, 14:38:14
Post #14





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

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


$_SESSION a $_session to nie to samo
Go to the top of the page
+Quote Post
pm161
post 27.05.2014, 14:41:43
Post #15





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 7.06.2013

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


Dzięki za poprawienie błędów. Jak mówilem na początku. Nie mogłem sprawdzać czy działa. Jedynie na echo... Dziękuję za pomoc!
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 Wersja Lo-Fi Aktualny czas: 10.06.2024 - 06:55