Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]includowanie parę plików o wspólnej nazwie do jednego
1slimak
post
Post #1





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 8.03.2011

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


mam jak przystało na przedszkolaka dla mnie nierozwiązywalny problem, a dla Was pewnie podstawowa rzecz

tym razem może opiszę o co mi chodzi na konkretach (IMG:style_emoticons/default/php.gif)

mam parę plików powiedzmy cos2ania.php; haha2ania.php; bartek26.php; polonez_bartek26.php .......... itp.

staruję jakąś stroną na, której powiedzmy mam odnośniki pliki bartka; pliki ani, ....... po kliknięciu na odnośnik "pliki bartka" wędruję na stronę np. bartek.php gdzie są includowane wszystkie pliki gdzie w nazwie występuje ciąg znaków bartek26, czyli mają one różne nazwy gdzie przed ciągiem bartek26 występują różne znaki oraz możliwe, że i za tym ciągiem też występują różne znaki, może to być różna ilość znaków


da się coś takiego zrobić(IMG:style_emoticons/default/questionmark.gif)

proszę o pomoc (IMG:style_emoticons/default/co_jest.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 15)
mat-bi
post
Post #2





Grupa: Zarejestrowani
Postów: 690
Pomógł: 92
Dołączył: 6.02.2011

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


Hmm... Chodzi ci o wczytanie wszystkich plików w danym folderze, których nazwy spełniają dane kryteria?

Jeżeli tak, poczytaj o I/O i wyrażeniach regularnych (pętla też)
Go to the top of the page
+Quote Post
Grzyw
post
Post #3





Grupa: Zarejestrowani
Postów: 561
Pomógł: 75
Dołączył: 19.08.2004
Skąd: Wrocław

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


Nie potrzebujesz nawet regularnych do tego.
1) Wczytaj pliki z folderu
2) Zrób pętle po plikach, w której
3) sprawdź, czy w nazwie pliku jest login usera, zamiast regularnych wystarczy czy strstr chociażby.
Go to the top of the page
+Quote Post
1slimak
post
Post #4





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 8.03.2011

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


Cytat
wczytanie wszystkich plików w danym folderze, których nazwy spełniają dane kryteria?


chodzi mi o to i to rozumię (IMG:style_emoticons/default/oneeyedsmiley02.png)

Cytat
Jeżeli tak, poczytaj o I/O i wyrażeniach regularnych (pętla też)
- tego nie bardzo (IMG:style_emoticons/default/co_jest.gif)

a nie mógłbyś napisać jakiegoś prostego skrypta?? lub miejsca gdzie taki można znaleźć?


litości, właśnie dlatego piszę w przedszkolu (IMG:style_emoticons/default/sciana.gif)

a no i chyba ważna informacja, nie chodzi o to, żeby to było generalnie w jakiś bazach danych - coś prostego, skutecznego, co nie można spaprać (IMG:style_emoticons/default/baaasmiley.gif)
Go to the top of the page
+Quote Post
bastard13
post
Post #5





Grupa: Zarejestrowani
Postów: 664
Pomógł: 169
Dołączył: 8.01.2010
Skąd: Kraków

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


  1. $directory = 'folder/z/plikami/';
  2. $searchFor ='bartek';
  3. foreach(scandir($directory) as $file)
  4. {
  5. if(is_int(strpos($file, $searchFor)) && is_file($file))
  6. include_once($file);
  7. }


Ten post edytował bastard13 4.04.2011, 20:22:55
Go to the top of the page
+Quote Post
1slimak
post
Post #6





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 8.03.2011

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


zrobiłem plik kwiecien.php

  1. <?php
  2. $directory = 'kw/';
  3. $searchFor ='201104';
  4. foreach(scandir($directory) as $file)
  5. {
  6. if(is_int(strpos($file, $searchFor)) && is_file($file))
  7. include_once($file);
  8. }
  9. ?>


utworzyłem parę plików gdzie występował ciąg 201104

wgrałem je do katalogu kw który jest w tym katalogu co plik kwiecien.php

i dostałem komunikat Fatal error: Call to undefined function: scandir() in ......../wydarzenia/kwiecien.php on line 4


(IMG:style_emoticons/default/sciana.gif)
Go to the top of the page
+Quote Post
bastard13
post
Post #7





Grupa: Zarejestrowani
Postów: 664
Pomógł: 169
Dołączył: 8.01.2010
Skąd: Kraków

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


A którą masz wersję php'a? scandir() jest dostępna od wersji 5.0
Go to the top of the page
+Quote Post
1slimak
post
Post #8





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 8.03.2011

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


twierdzą że na serwerze są php od 4 do 6
Go to the top of the page
+Quote Post
bastard13
post
Post #9





Grupa: Zarejestrowani
Postów: 664
Pomógł: 169
Dołączył: 8.01.2010
Skąd: Kraków

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


No to ty jesteś w tej pechowej liczbie posiadaczy php 4, więc albo zmienią ci na piątkę, albo tu masz 'implementacje' scandir() dla 4
http://forums.powweb.com/showthread.php?t=56604
Go to the top of the page
+Quote Post
1slimak
post
Post #10





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 8.03.2011

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


  1. <?php
  2. $dir = "/tmp";
  3. $dh = opendir($dir);
  4. while (false !== ($filename = readdir($dh))) {
  5. $files[] = $filename;
  6. }
  7.  
  8. sort($files);
  9. print_r($files);
  10. rsort($files);
  11. print_r($files);
  12. ?>


a gdzie tutaj trzeba wpisać poszukiwany ciąg znaków

bo katalog to chyba w $dir="kw/" - czy tak?
Go to the top of the page
+Quote Post
bastard13
post
Post #11





Grupa: Zarejestrowani
Postów: 664
Pomógł: 169
Dołączył: 8.01.2010
Skąd: Kraków

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


Cytat
tu masz 'implementacje' scandir()

to oznacza, że kod robi to, co funkcja scandir().
Teraz musisz jedynie połączyć to, co masz, z tym co napisałem wcześniej.

Ten post edytował bastard13 4.04.2011, 21:26:16
Go to the top of the page
+Quote Post
1slimak
post
Post #12





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 8.03.2011

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


spróbowałem to skleić ale pominę milczeniem ile błedów mi wypisała przeglądarka (IMG:style_emoticons/default/wstydnis.gif)

czy mógłbyś to skleić, żeby to miało sens??

proszę (IMG:style_emoticons/default/biggrin.gif)
Go to the top of the page
+Quote Post
bastard13
post
Post #13





Grupa: Zarejestrowani
Postów: 664
Pomógł: 169
Dołączył: 8.01.2010
Skąd: Kraków

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


Nie, ale jak pokażesz co napisałeś i wkleisz błędy, które zwróciła ci przeglądarka, to chętnie pomogę.
Go to the top of the page
+Quote Post
1slimak
post
Post #14





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 8.03.2011

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


tylko się proszę nie smiać (IMG:style_emoticons/default/thumbsdownsmileyanim.gif)

  1. <?php
  2. $directory = 'kw/';
  3. $searchFor ='201104';
  4. $dir = "/tmp";
  5. $dh = opendir($dir);
  6. while (false !== ($filename = readdir($dh))) {
  7. $files[] = $filename;
  8. }
  9.  
  10. sort($files);
  11. print_r($files);
  12. rsort($files);
  13. print_r($files);
  14. foreach(scandir($directory) as $file)
  15. {
  16. if(is_int(strpos($file, $searchFor)) && is_file($file))
  17. include_once($file);
  18. }
  19. ?>


no i błędy (mało wierszy jest bez nich (IMG:style_emoticons/default/businesssmiley.png)

Warning: opendir(/tmp) [function.opendir]: failed to open dir: Permission denied in /homez.323/................/wydarzenia/kwiecien.php on line 5

Warning: readdir(): supplied argument is not a valid Directory resource in /homez.323/................/wydarzenia/kwiecien.php on line 6

Warning: sort() expects parameter 1 to be array, null given in /homez.323/................/wydarzenia/kwiecien.php on line 10

Warning: rsort() expects parameter 1 to be array, null given in /homez.323/................/wydarzenia/kwiecien.php on line 12

Fatal error: Call to undefined function: scandir() in /homez.323/................//wydarzenia/kwiecien.php on line 14



(IMG:style_emoticons/default/sciana.gif) (IMG:style_emoticons/default/dostal.gif)
Go to the top of the page
+Quote Post
bastard13
post
Post #15





Grupa: Zarejestrowani
Postów: 664
Pomógł: 169
Dołączył: 8.01.2010
Skąd: Kraków

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


translate.google.pl
W błędach masz wszystko napisane, wystarczy, że przeczytasz ze zrozumieniem.
Fatal error ci wyskakuje, ponieważ nadal masz wywołanie scandir().
Go to the top of the page
+Quote Post
1slimak
post
Post #16





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 8.03.2011

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


pewnie jakbym się na tym znał to bym przeczytał ze zrozumieniem (IMG:style_emoticons/default/arrowheadsmiley.png)

na szczęście wymusiłem php5 i ten Twój skrypt działa teraz bez problemu dzięki (IMG:style_emoticons/default/yahoo.gif)

Panowie proszę o szybką pomoc wczoraj ten skrypt działał a dzisiaj kicha, biały ekran nawet nie wyskakuje żaden błąd

  1. <?php
  2. $directory = 'kartki/';
  3. $searchFor ='201104';
  4. foreach(scandir($directory) as $file)
  5. {
  6. if(is_int(strpos($file, $searchFor)) && is_file($file))
  7. include_once($file);
  8. }
  9. ?>


jeżeli ten plik umieszczę w katalogu tym samym co szukane pliki to działa wtedy 'kartki/' zamieniam na '.'

czy coś poknociłem z katalogiem (kartki) czy jakiś inny bubel??

Ten post edytował 1slimak 7.04.2011, 23:47:43
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: 2.10.2025 - 03:01