[php] Lista plikow folderu + opisy

0

Wiajcie.
Mam taki problem.
Babka chce aby zrobic jej mozliwosc uploadu plikow na serwer. Zaden problem. Wyswietlane sa tylko o rozszerzeniach DOC, XLS, PDF (tak jak chciala) posortowane w/g daty malejaco.
Problemem stalo sie dla mnie dodanie opisu do kazdego pliku.
Babka chce podczas dodawania pliku na serwer wpisac jakis opis tego pliku, aby pojawil sie on potem na stronie w postaci

Id_pliku | nazwa_pliku | opis | data_dodania | rozmiar_pliku

Zaznaczam ze nie moge skorzystac z bazy danych.
Musi to byc oparte na plikach tekstowych.

No i tu powstaje jeszcze wiekszy problem: problem z przydzieleniem konkretnego pliku konkretnemu opisowi.

Ktos ma pomysl?

Pozdrawiam
Novitius

0

Według mnie wystarczy do tego jeden plik txt.

PLIK.TXT
Nazwa pliku 1
Opis pliku
Nazwa pliku 2
Opis pliku

Skrypt najpierw szuka nazwe pliku, potem linie nizej czyta opis tego pliku.

0

Tez nad tym myslalem.
Problem chyba bedzie w momencie kiedy usuniemy jakis dokument nie najswiezszy i nie najstarszy...

0
konrad.g napisał(a)

Według mnie wystarczy do tego jeden plik txt.

PLIK.TXT
Nazwa pliku 1
Opis pliku
Nazwa pliku 2
Opis pliku

Skrypt najpierw szuka nazwe pliku, potem linie nizej czyta opis tego pliku.

Ja bym stworzył plik: opis.txt a każdy wpis wyglądał by w nim tak:

nazwa_pliku||opis_pliku||data_dodania

wtedy poprzez file() bym wczytywał ten plik. A usuwanie/dodawanie/edycja jest prosta i sprowadza się do zmodyfikowania/usunięcia/dodania odpowiedniej linijki w pliku.

0
angel2953 napisał(a)
konrad.g napisał(a)

Według mnie wystarczy do tego jeden plik txt.

PLIK.TXT
Nazwa pliku 1
Opis pliku
Nazwa pliku 2
Opis pliku

Skrypt najpierw szuka nazwe pliku, potem linie nizej czyta opis tego pliku.

Ja bym stworzył plik: opis.txt a każdy wpis wyglądał by w nim tak:

nazwa_pliku||opis_pliku||data_dodania

wtedy poprzez file() bym wczytywał ten plik. A usuwanie/dodawanie/edycja jest prosta i sprowadza się do zmodyfikowania/usunięcia/dodania odpowiedniej linijki w pliku.

To juz w jaki sposob zapiszesz sobie to do pliku, to twoja sprawa ja dalem tylko przyklad. A tak jak angel mowil edycja bedzie prosta. Usuwasz odpowiednie linie z pliku.

0

Pomysl wydaje sie dobry.

Czy czasowo przeszukanie dla 200 plikow 200 linijek w pliku tekstowym bedzie mordercze dla serwera, na ktorym bedzie wisiec tylko i wylacznie ta strona?

Nasuwaja mi sie jeszcze 1 pytanie:
Jak pobrac wartosci pomiedzy delimiterami ||?
nazwa_pliku||opis_pliku||data_dodania
Czy moze mam sprawdzac znak po znaku czy delimiter nie wystapil?

0

$tablica_wartosci=explode('||',$tekst);

0

Dzieki Adamo

Uzyskalem juz plik po uploadzie w ktorym mam:

autor###nazwa_pliku.abc###opis_pliku###adres_ip
autor###nazwa_pliku.abc###opis_pliku###adres_ip
autor###nazwa_pliku.abc###opis_pliku###adres_ip

Jak teraz moge usunac wpis ze srodka? Jakis pomocny kod, albo link do arta na ten temat?

Chcialbym usuwajac plik od razu usunac linijke z jego opisem.

0

Możesz to zrobić np. tak:

function UsunPlik( $nazwaPliku )
{
  $pliki = file( "/sciezka/do/pliku/z/lista/plikow.txt" );
  $ilelinijek = count( $pliki );
  $nowalista = fopen( "/sciezka/do/pliku/z/lista/plikow.txt", "w" );
  for( $i = 0; $i <= $ilelinijek; $i++ )
  {
    $data = explode( "###", $pliki[$i] );
    if( $data[1] == $nazwaPliku )
    {
      unlink( $data[1] );
    }
    fwrite( $nowalista, $pliki[$i] );
  }
  fclose( $nowalista );
}

1 użytkowników online, w tym zalogowanych: 0, gości: 1