PuszBaza
Pehapowska baza danych


PuszBaza - Napisany przeze mnie w php program - baza danych
ktory pozwala korzystac z fukcji podobnych do sqla
ale bez potrzeby posiadania dostepu do MySql PostgreSql i innych tego typu baz

Download
Wersje PuszBazy 1.2.2 oraz 1.3.4
Co to jest PuszBaza?
Krótki opis mojego autorstwa
Jak zainstalować?
Krótki opis jak zacząć używać PuszBazy
Dokumentacja
Pełna pomoc Przemysława Jackowskiego do versji 1.2
Gotowe skrypty
Takie jak Forum, GuestBook czy addony do PuszBazy
Forum i FAQ
Obecnie wylaczone z uzytku

Co to jest PuszBaza

Ta baza w zupelnosci nie potrzebuje zadnego dodatkowego oprogramowania (w stylu MySql PostgreSql itp) Opiera sie wylacznie na PHP4. Natomiast same dane bazy przetrzymywane sa w plikach tekstowych o takiej strutkturze

id;nazwa;jaka;
1;lala;fajna;
2;polka;glupia;

Gdzie pierwsza linia to nazwy kolumn. Bardzo podobnie jak pliki csv dla baz sqelowych Polaczenie z taka "baza" to poprostu zaincludowanie pliku funkcji puszbazy. By do strony ladowalo sie jak najmniej tekstu radze wykasowac funkcje z ktorych sie nie bedzie korzystalo. Baza nie ma najmniejszych nawet zabezpieczen. Jak ktos sie zorientuje jak sie nazywa plik z danymi bez problemu je obejrzy. Powstala glownie po to by latwo robic takie rzeczy jak ksiegi gosci, forum, sondy czy proste bazy wyswietlajace dane na stronie. W wiekszosci przypadkow zawarte tu funkcje powinny w zupelnosci wystarczyc. (Ograniczone: select, update, insert, delete, connect, licz wiersze itp)

Skrypty

PuszForum 1.1
Plik 28,05 kB
By Puszkin
Forum z mojej strony w wersji do uzywania. :)

phpPuszAdmin 1.1
Plik 26,05 kB
By Puszkin
To phpPuszAdmin z opcja chodzenia po katalogach w prawym menu (Dla mnie bardzo potrzebna rzecz) Podkatalogi w katalogu bazy dodajemy i usuwamy nadal sami, ale nie trzeba juz zmieniac confa aby sobie po nich pochodzic. Pozwala to na porzadne posegregowanie plikow danyc. W srodku uzyta jest addpuszbaza.php Nowy zbiro funkcji puszbazy. phpPuszAdmin dziala na puszbazie 1.2.2 (umieszczona w srodku)

phpPuszAdmin 1.0
Plik 15,05 kB
By Puszkin
Wreszcie napisalem wlasna i dosyc rozbudowana wersje administratora do puszbazy. Mozliwosci: Dodawanie i kasowanie kolumn, zarzadzanie danymi, Zmiana nazw tabeli i wiele innych. Layoutowo oparlem sie na wersji Kissa. W srodku uzyta jest addpuszbaza.php Nowy zbiro funkcji puszbazy. phpPuszAdmin dziala na puszbazie 1.2.2 (umieszczona w srodku)

PuszGuestBook
Plik 9,05 kB
By Puszkin
W koncu pojawil sie dlugo oczekiwany skrypt Ksiegi gosci. Jest to zipowana kopia tej ksiegi ktora mozna zobaczyc na mojej stronie. Layout trzeba sobie dorobic samemu. Komentarze i krotkie readme w jezyku angielskim, ale chyba nikomu to nie przeszkodzi :) W srodku puszbaza 1.2.1

puszmyadmin
Plik 8,74 kB
By KRISS
Dzieki KRISowi mozemy cieszyc sie pierwszym (naprawde fajnym) skryptem do PuszBazy.
To chyba najapotrzebniejsze narzedzie jakie mozna sobie wymyslec.
Szkoda tylko ze nie pozwala na edycje indexu. Dodatkowo chcialbym przestrzec. Nie ma zadnych zabezpieczen (poza dodanym przeze mnie oknem logowania dla pierwszego pliku) Jedna uwaga. Orginalna nazwa nadana przez KRISa to puszmyadmin. Wydawalo mi sie jednak rozsadzniej zmienic nazwe na phpPuszAdmin :) Oparty na puszbazie 1.1.2

forum.zip
Plik 16 Kb
By Puszkin
Stara kopia skryptu forum ktore znajdue sie na tej stornie. Pliki z listami kategoriami i tematami znajduja sie w katalogu bazy wewnatrz forum. Sadze ze forma tego skryptu bedzie dla was na tyle przejrzysta iz kazdy sam spokojnie go sobie przerobi do wlasnych potrzeb.
Niedlugo nowa wersja

Niedlugo pojawia sie tu takze inne narzedzia do PuszBazy
Skrypty oparte na PB. - Na tej strone znajdziecie np ksiege gosci ktora niedawno przepisalem na PB
ale pewnie pojawia sie takze forum, sonda, i licznik wielu stron

Download

Pobierz PuszBaze 1.2.2 dokumentacje 1.2.1 i przyklad puszbaza122.zip 14kB
Pobierz addPuszBaze 1.0 addpuszbaza.zip 7kB


addpuszbaza to kolekcja dodatkowych funkcji do puszbazy. Includuje sie ja tak samo jak puszbaze (ale sama puszbaza.php tez musi byc) Znajduja sie tam takie funkcje jak dodaj kolumne, usun kolumne, stworz baze etc. Do podstawowego dzialania nieptrzebne, ale moga sie przydac:)

Pobierz PuszBaza 1.3.4 wersja beta (w trakcie testow) puszbaza134.zip
Do tej wersji dopiero powstaje dokumentacja.

Co nowego w 1.3?

Inny sposob pisania warunkow - patrz example.php w zipie.
W PB1.2.2 pisalismy w select, update, delete na przyklad
$conn = connect_pb("jakasbaza.pbf");
$wynik = select_pb($conn, "id", "x == 3");

W PB 1.3.1 napiszemy
$wynik = select_pb($conn, "id == '3'");

Z uzyciem AND teraz bedzie
$wynik = select_pb($conn, "id == '3' AND autor == 'kasia'");
Wszystkie wartosci musza byc zamykane w apostrofy, czy liczbowe czy tekstowe


Sortowanie po wielu kolumnach - patrz example.php w zipie
W PB1.2.2 pisalismy
$wynik = select_pb($conn, "id", "x > 3", "id", "ASC");

W PB 1.3.1 napiszemy
$wynik = select_pb($conn, "id > '3'", "id ASC");
Ale mozemy teraz posortowac po paru kolumnach (nawet wszystkich)
$wynik = select_pb($conn, "id > '3'", "id ASC, autor DESC");


Updatowanie wielu kolumn naraz - patrz example.php w zipie
W PB1.2.2 pisalismy
update_pb($plik, "id", "x == 3", "autor","Nienacki");

W PB 1.3.1 napiszemy
update_pb($plik, "id == '3'", "autor = 'Nienacki'");
Ale mozemy teraz zupdatowac pare kolumn naraz (nawet wszystkie)
update_pb($plik, "id == '3'", "autor = 'Nienacki', tytul ='Pan Samochodzik'");
Kolejne odzielamy przecinkami


Nowy zapis insertu
W PB1.2.2 pisalismy
insert_pb($plik, "2;Nienacki;Pan Samochodzik;");

W PB 1.3.1 napiszemy
insert_pb($plik, "'2', 'Nienacki', 'Pan Samochodzik'");


Laczenie tabel
Nowa funkcja $wynik = join_pb($conn1,"kolumnadolaczenia1", $conn2, "kolumnadolaczenia2")
Mozna stosowac takze po dzialaniu selectu, jak i dokonywac selfjoinow etc. Wszystkie wynik connectu i selectu mozna za pomoca tej funkcji laczyc i pozniej znowu poddac np selectowi
Laczenie na zasadzie warunku klucz = kluczobcy. Gdzie Kolumnadolaczenia1 to klucz a kolumnadolaczenia 2 to klucz obcy. Nowy wynik bedzie zawieral wszystkie kolumny pierwszej i drugiej tabeli ale przefiltrowane pod kontem zgodnosci kolumn-kluczy


Automatyczna zamiana srednikow
W PB 1.3.1 nie trzeba przed zapisem do bazy zamieniac srednikow na spec symbole. Baza robi to soma. Podobnie przy odczytywaniu sama odcyfrowuje symbole spoworotem w sredniki.


Rozwiazany problem przecinkow i srednikow z wersji 1.3


System safe
Przy wybraniu tej opcji pliki baz juz nie sa dostepne dla obcych.
Wystarczy przy uzywaniu funkcji zapisujacych dodanie flagi "1". update_pb($plik, "id == '3'", "autor = 'Nienacki'", 1);
lub
insert_pb($plik, "'2', 'Nienacki', 'Pan Samochodzik'", 1);
lub
delete_pb($plik, "id == '3'", 1);
W funkcjach connect_pb i select_pb i reszcie nie potrzeba tego zaznaczac, baza sama rozmpozna. Zabezpieczenie polega na zamianie pliku bazy na plik skryptu php. Czyli rozszezenie takiej bazy powino byc "php", a nie "pbf" czy "txt". Ktos kto w swojej przegladarce uruchomi ten plik zobaczy tylko ostrzezenie o braku dostepu.


Dodatkowe dzialanie count_pb.
Teraz mozna uzyc dowolnej funkcji agregujacej. Nadal dziala count_pb($wynik) liczacy wiersze, ale takze count_pb($wynik,"id","max") Poda najwyzsza wartosc w kolumnie id. Dziala tez sum i min


PuszBaza 1.3.1 jest niekompatybilna
z gotowymi skrytpami jak i z addpuszbaza 1.0 z tej strony.


Jak zainstalowac?

Rozpakuj te pliki i przegraj do katalogu www ktory obsluguje php4 Nadaj prawa plikowi dane.txt zapisu dla wszystkich. (Mozna to zrobic np ftp windows comandera. Menu plik -> atrybuty) Nastepnie uruchom przyklad.php Zobaczysz wylistowane recordy z pliku dane.txt. W pliku przyklad sa zahaszowane rozne funkcje PuszBazy
Milej zabawy! :)

Jesli nadal czegos nie wiesz, lub po prostu chcesz o cos zapytac albo zapropnowac pisz na forum PuszBazy Forum i FAQ

Jesli używasz Puszbazy i chcesz aby inni sie o niej dowiedzieli. Umiesc to na stronie.