Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zmiana nazwy katalogu, Jak dynamicznie to zrobić ?
BatGraf
post
Post #1





Grupa: Zarejestrowani
Postów: 182
Pomógł: 0
Dołączył: 20.03.2007
Skąd: Kruklanki/Otwock

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


Cześć (IMG:style_emoticons/default/smile.gif)
Przewertowałem forum, na pewno nie dokładnie, ale podobnego tematu nie znalazłem, dlatego piszę. Jesli jest, nie gniewajcie się za spam (IMG:style_emoticons/default/smile.gif)

Chodzi mi o taki system:

Strona korzysta z katalogu "obrazki", mam dwie wersje kolorystyczne, czyli dwa katalogi "obrazki" - jeden np biały, drugi czarny styl.
Chciałbym zrobić tak, jak jest w różnych cmsach, ze wypisane są np oba style:
- biały
- czarny
Aktualny: biały

To wiem, ale zależy mi na tym, żeby obok był link, "zmień"

Kombinuję tak, że chcę zmieniać nazwę katalogu "bialy" na obrazki lub "czarny" na "obrazki" - strona bierze grafike z "obrazki" i to jest stałe.

Jaki mam problem?
Funkcją rename zmienia mi ładnie, ale jak chcę zmienić na nazwę, która już jest - nie chce.
Druga rzecz - jak skonstruować sam link? Może za pomocą JS?

Wiem, ze zadaję głupie pytania, ale z góry ogromnie dziękuję za pomoc (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
lDoran
post
Post #2





Grupa: Zarejestrowani
Postów: 172
Pomógł: 13
Dołączył: 15.11.2009

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


Widziałeś kiedykolwiek, żeby w jakimś systemie w jednym katalogu, istniały dwa pliki lub foldery o tej samej nazwie?
Go to the top of the page
+Quote Post
BatGraf
post
Post #3





Grupa: Zarejestrowani
Postów: 182
Pomógł: 0
Dołączył: 20.03.2007
Skąd: Kruklanki/Otwock

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


no nie. Nie o to mi chodzi.

mam dwa katalogi - "bialy" i "czarny" w "bialy" jest "nagłówek.jpg" z pralką w "czarny" "nagłówek.jpg" z telewizorem

Strona, żeby wyświetlić nagłówek, pobiera z "obrazki/naglowek.jpg" i chodzi mi, żeby po prostu zamienić zawartość katalogu "obrazki"
Nadpisać, czy najpierw skasować i skopiować, któryś z dwóch ("bialy" lub "czarny")

Może napisałem to enigmatycznie, ale chodzi mi o po prostu zmianę nagłówka, poprzez zmianę zawartości katalogu "obrazki"
Go to the top of the page
+Quote Post
ADeM
post
Post #4





Grupa: Zarejestrowani
Postów: 455
Pomógł: 69
Dołączył: 23.10.2004
Skąd: Oświęcim

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


Raczej nie w ten sposób się to robi. Jeśli jednak nie chcesz nigdzie trzymac informacji o stylu, to po prostu rób tak jak robiłeś:
kat1 -> katTemp
kat2 -> kat1
katTemp -> kat2
Go to the top of the page
+Quote Post
BatGraf
post
Post #5





Grupa: Zarejestrowani
Postów: 182
Pomógł: 0
Dołączył: 20.03.2007
Skąd: Kruklanki/Otwock

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


czyli najpierw zmienić nazwę "obrazki" na np "obrazki_temp" a potem katalog "bialy" na "obrazki?
Niby ok, ale przy następnej zmianie bedzie już istniał katalog "obrazki_temp" bo wczesniej sie utworzył i nie da się zapisać.

Myślałem o skasowaniu najpierw katalogu "obrazki" i dopiero skopiowanie "bialy" i jednoczesną zmianę na "obrazki" ale za diabła nie mogę znaleźć jak skasowac cały katalog z zawartością. Tzn znalazłem sporo, ale jak dotąd nie działa mi to jak nalezy (IMG:style_emoticons/default/smile.gif) (nie czekam z założonymi rękami - szukam (IMG:style_emoticons/default/smile.gif) )


No to rozwiązałem to tak:

  1. <?
  2. function usunkatalog($sciezka) {
  3. if (!file_exists($sciezka)) return false;
  4. if (is_file($sciezka)) return unlink($sciezka);
  5. $katalog = opendir($sciezka);
  6. while (false !== ($plik = readdir($katalog))) {
  7. if ($plik<>"." && $plik<>"..") usunkatalog("$sciezka/$plik");
  8. }
  9. closedir($katalog);
  10. return rmdir($sciezka);
  11. }
  12.  
  13. usunkatalog("szablon/obrazki");
  14. rename("1", "szablon/obrazki");
  15. ?>


Powiedzcie zatem jak bardzo kretyńsko ? (IMG:style_emoticons/default/smile.gif)

Ten post edytował BatGraf 14.11.2010, 23:17:00
Go to the top of the page
+Quote Post
ADeM
post
Post #6





Grupa: Zarejestrowani
Postów: 455
Pomógł: 69
Dołączył: 23.10.2004
Skąd: Oświęcim

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


Masz kat1, i kat2. Obrazki bierzesz z kat1. Jak chcesz zmienic styl na kat, to robisz:
1) zmiana nazwy z kat1 na katTemp
2) zmiana nazwy z kat2 na kat1
3) zmiana nazwy z katTemp na kat2
W ten sposób możesz przełączać między tymi dwoma folderami.

Lepiej by było jednak zapisać gdzieś nazwe stylu i brac pliki z odpowiedniego folderu, w zależności od niego.
Go to the top of the page
+Quote Post
BatGraf
post
Post #7





Grupa: Zarejestrowani
Postów: 182
Pomógł: 0
Dołączył: 20.03.2007
Skąd: Kruklanki/Otwock

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


hmm, chyba lepsze rozwiązanie niż moje. Nie przyszło mi do głowy, żeby zrobić jednocześnie trzy operacje zmiany nazwy, faktycznie. Zaraz wypróbuję.


Działa (IMG:style_emoticons/default/smile.gif) Dzięki

Kolejny raz dostaję dowód, że php to bardziej umiejętność korzystania z mózgu niz klawiatury (IMG:style_emoticons/default/smile.gif)

Ten post edytował BatGraf 14.11.2010, 23:27:56
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 15.09.2025 - 01:12