Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Panel Administracyjny z listą wybranych plików.
nigraS
post 13.08.2014, 11:14:36
Post #1





Grupa: Zarejestrowani
Postów: 179
Pomógł: 1
Dołączył: 25.11.2006

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


Jak ustawić, aby skrypcie :
http://www.forumweb.pl/porady-i-tutoriale-...31b1d04c4#94771

Pojawiła się tylko lista wybranych plików?

Obecnie skrypt wyświetla wszystkie pliki jakie znajdują się na ftp.
Go to the top of the page
+Quote Post
fate
post 13.08.2014, 16:39:09
Post #2





Grupa: Zarejestrowani
Postów: 824
Pomógł: 106
Dołączył: 14.03.2012
Skąd: Warszawa

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


klucowe jest jakich plikow, maja miec konkretne rosrenie


--------------------
Go to the top of the page
+Quote Post
nigraS
post 13.08.2014, 16:54:17
Post #3





Grupa: Zarejestrowani
Postów: 179
Pomógł: 1
Dołączył: 25.11.2006

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


chodzi o pliki .php
Go to the top of the page
+Quote Post
fate
post 13.08.2014, 18:03:04
Post #4





Grupa: Zarejestrowani
Postów: 824
Pomógł: 106
Dołączył: 14.03.2012
Skąd: Warszawa

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


amiast
if($plik[1] == "css" || $plik[1] == "php" || $plik[1] == "html" || $plik[1] == "php3" || $plik[1] == "htm" || $plik[1] == "txt") {

rob

if($plik[1] == "php") {


--------------------
Go to the top of the page
+Quote Post
nigraS
post 13.08.2014, 20:54:27
Post #5





Grupa: Zarejestrowani
Postów: 179
Pomógł: 1
Dołączył: 25.11.2006

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


Może źle się wyraziłem.
Nie chodziło mi o to, aby plik wyświetlał tylko pliki .php, a o to, aby skrypt wyświetlał tylko wybrane pliki np. 4 z 20 plików.
Go to the top of the page
+Quote Post
fate
post 14.08.2014, 06:49:43
Post #6





Grupa: Zarejestrowani
Postów: 824
Pomógł: 106
Dołączył: 14.03.2012
Skąd: Warszawa

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


tworzysz tablice z ich nazwami

$tablica[0]='plik.php';
$tablica[1]='plik2.php';
$tablica[2]='plik55.php';
$tablica[3]='plik77.php';


Po pierwsze to:
  1. function czytaj($nazwa)
  2. {
  3. @ $katalog = opendir($nazwa);
  4. while (@ $p_k = readdir($katalog))
  5. {
  6. if ($p_k == "." || $p_k == ".." || !eregi('\.', $p_k))
  7. {
  8. if ($p_k == "." || $p_k == "..")
  9. {
  10. } else {
  11. czytaj($nazwa . "/" . $p_k);
  12. }
  13. } else {
  14. $plik = explode(".", $p_k);
  15. if($plik[1] == "css" || $plik[1] == "php" || $plik[1] == "html" || $plik[1] == "php3" || $plik[1] == "htm" || $plik[1] == "txt") {
  16. echo "<option value='" . $nazwa . "/" . $p_k . "'>" . $nazwa . "/" . $p_k . "</option> \n";
  17. }
  18. }
  19. }
  20.  
  21. }


zastap tym:

  1. $lista=scandir($nazwa);
  2. $listaCount=count($lista);
  3. for($i=2;$i<=$listaCount;$i++)
  4. {
  5. echo "<option value='" . $nazwa . "/" . $lista[$i] . "'>" . $nazwa . "/" . $lista[$i] . "</option> \n";
  6. }


a co do Twoich zachcianek to tym:
  1. //lista wybranych plikow ktore chcesz pokazac
  2. $tablica[0]='plik.php';
  3. $tablica[1]='plik2.php';
  4. $tablica[2]='plik55.php';
  5. $tablica[3]='plik77.php';
  6.  
  7. $lista=scandir($nazwa);
  8. $listaCount=count($lista);
  9. for($i=2;$i<=$listaCount;$i++)
  10. {
  11. if(in_array($lista[$i],$tablica))
  12. {
  13. echo "<option value='" . $nazwa . "/" . $lista[$i] . "'>" . $nazwa . "/" . $lista[$i] . "</option> \n";
  14. }
  15. }
  16.  


--------------------
Go to the top of the page
+Quote Post
nigraS
post 14.08.2014, 10:54:09
Post #7





Grupa: Zarejestrowani
Postów: 179
Pomógł: 1
Dołączył: 25.11.2006

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


ok, podmieniłem kod, jednak teraz lista się nie rozwija.

Skrypt znajduje się w katalogu administrator, fragment kodu zmieniłem na:
$tablica[0]='index.php';
oraz
$tablica[0]='../index.php';

jednak w żadnym z tych dwóch wpisów plik nie pojawia się na liście.
Go to the top of the page
+Quote Post
fate
post 14.08.2014, 12:04:00
Post #8





Grupa: Zarejestrowani
Postów: 824
Pomógł: 106
Dołączył: 14.03.2012
Skąd: Warszawa

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


jaka masz wersje php?

zrob var_dump($lista);
i wklej co tam masz


--------------------
Go to the top of the page
+Quote Post
nigraS
post 14.08.2014, 22:56:49
Post #9





Grupa: Zarejestrowani
Postów: 179
Pomógł: 1
Dołączył: 25.11.2006

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


PHP Version 5.3.27

w którym miejscu wstawić var_dump($lista);?

Gdy wstawiłem zaraz po Twoim kodzie pojawił się napis NULL, a gdy wstawiłem echo var_dump($lista); również zaraz po Twoim kodzie pojawił sie napis:
bool(false)
Go to the top of the page
+Quote Post
fate
post 15.08.2014, 06:05:40
Post #10





Grupa: Zarejestrowani
Postów: 824
Pomógł: 106
Dołączył: 14.03.2012
Skąd: Warszawa

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


var_dump sluzy do sprawdania co najduje sie w zmiennej tablicy a ona jest pusta
dodaj na samym pocatku linjijke
  1. $nazwa='./';

co odnosi sie do katalogu glownego, chyba e chces robic liste w jakims zagniedonym ale takich wide nie ma,
Patrylem na kod 1 posta a autor tam w calym watku ciagle cos poprawia i sa kolejne wersje

Ten post edytował fate 15.08.2014, 06:06:45


--------------------
Go to the top of the page
+Quote Post
nigraS
post 18.09.2014, 20:47:06
Post #11





Grupa: Zarejestrowani
Postów: 179
Pomógł: 1
Dołączył: 25.11.2006

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


ok, dodałem i taki komunikat się pojawił:

  1. array(9) { [0]=> string(1) "." [1]=> string(2) ".." [2]=> string(8) "ckeditor" [3]=> string(9) "duser.php" [4]=> string(9) "index.php" [5]=> string(14) "informacja.txt" [6]=> string(9) "login.php" [7]=> string(6) "pa.php" [8]=> string(8) "user.php" }


I czy mógłby ktoś pomóc w tym?
Go to the top of the page
+Quote Post
nospor
post 18.09.2014, 20:53:22
Post #12





Grupa: Moderatorzy
Postów: 36 456
Pomógł: 6296
Dołączył: 27.12.2004




No a do $tablica wstawiles jakieś pliki z tej listy co ci sie wlasnie wyswietlila? Bo jak nie, to nie oczekuj ze ten kod ci doda pliki, ktorych nie ma Twoja lista.


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
nigraS
post 18.09.2014, 21:30:20
Post #13





Grupa: Zarejestrowani
Postów: 179
Pomógł: 1
Dołączył: 25.11.2006

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


Tak, w $tablica zamieściłem pliki.
Go to the top of the page
+Quote Post
nospor
post 18.09.2014, 21:39:10
Post #14





Grupa: Moderatorzy
Postów: 36 456
Pomógł: 6296
Dołączył: 27.12.2004




POkaz jakie pliki zamiesciles.


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
nigraS
post 18.09.2014, 21:54:30
Post #15





Grupa: Zarejestrowani
Postów: 179
Pomógł: 1
Dołączył: 25.11.2006

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


  1. $tablica[0]='../index.php';
  2. $tablica[1]='../zh/index.php';
  3. $tablica[2]='../ru/index.php';
  4. $tablica[3]='../en/index.php';


Ahaa i błąd jaki się pojawia na stronie to:
Cytat
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/world/domains/demo.adkash.nl/public_html/administrator/pa.php:1) in /home/world/domains/demo.adkash.nl/public_html/administrator/pa.php on line 2

Warning: scandir() [function.scandir]: Directory name cannot be empty in /home/world/domains/demo.adkash.nl/public_html/administrator/pa.php on line 16


Ten post edytował nigraS 18.09.2014, 21:55:55
Go to the top of the page
+Quote Post
nospor
post 18.09.2014, 22:28:12
Post #16





Grupa: Moderatorzy
Postów: 36 456
Pomógł: 6296
Dołączył: 27.12.2004




Czy naprawde na tej liscie:
array(9) { [0]=> string(1) "." [1]=> string(2) ".." [2]=> string(8) "ckeditor" [3]=> string(9) "duser.php" [4]=> string(9) "index.php" [5]=> string(14) "informacja.txt" [6]=> string(9) "login.php" [7]=> string(6) "pa.php" [8]=> string(8) "user.php" }

widzisz jakikolwiek plik, ktory by sie zgadzal z tym co podales w $tablica? Bo ja nie widze ani jednego... Zdajesz sobie w ogole sprawe o co pytasz? Bo odnosze wrazenie ze nie.

ps: swoją drogą nie ogarniam, czemu fate kazal ci zamienic twoj readdir na jego scandir. Przeciez twoj kod lecial rekurencyjne w podkatalogi, zas jego ogranicza sie tylko do jednego poziomu.... Ale to juz jego trzeba sie pytac smile.gif


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
nigraS
post 19.09.2014, 11:05:01
Post #17





Grupa: Zarejestrowani
Postów: 179
Pomógł: 1
Dołączył: 25.11.2006

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


skrypt zamieszczony jest w katalogu administrator, czyli skrypt będzie widział tylko pliki znajdujące się w tym katalogu?
Czy jeśli zmienię: $lista=scandir($nazwa); na $lista=readdir($nazwa); to skrypt będzie widział pliki z innego wskazanego katalogu?

Czy mój wpis do $tablica jest poprawny?

Testowo zmieniłem $tablica na pliki które się mieszczą w katalogu administrator.
Kod
$tablica[0]='login.php';
$tablica[1]='index.php';
$tablica[2]='pa.php';
$tablica[3]='user.php';


Jednak skrypt cały czas nie widzi plików i wyświetla komunikat błędu:
Cytat
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/world/domains/demo.adkash.nl/public_html/administrator/pa.php:1) in /home/world/domains/demo.adkash.nl/public_html/administrator/pa.php on line 2

Warning: scandir() [function.scandir]: Directory name cannot be empty in /home/world/domains/demo.adkash.nl/public_html/administrator/pa.php on line 16


Ten post edytował nigraS 19.09.2014, 11:11:06
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: 26.04.2024 - 11:44