Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [skrypt]DySRS
Mistrig
post
Post #1





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 6.04.2006

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


Witam.
Chciałbym abyście ocenili mój skrypt bazy danych.
link do mirrora: www.dysrs.yoyo.pl/dowload.php
Skrypt jak się nie trudno domyślić służy do zapisywania, odczytywania i usuwania danych. Jest to wczesna wersja więc nie ma jeszcze sprawdzania niektórych błędów i blokowania plików. Chciałbym się jednak dowiedzieć od was czy obecny kod jest w miare dobry czy wręcz przeciwnie.
ps: w paczce macie przykładowe skrypty pokazyjące wykorzystanie bazy.

Ten post edytował Mistrig 24.07.2006, 13:09:10
Go to the top of the page
+Quote Post
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




no coz. powiem krotko: usiąść i plakac.

1) pomijam juz sposob przechowywania danych.
2) Tworzysz plik php, ale go nie zamykasz ?>
3) dane przechowujesz jako tablica php, wszedzie jest $x++. a nie mozna normalnie podawac indexu do tablicy. musiz byc ten $x?
4) spodobala mi sie funkcja usun(). perelka w tym wszystkim. zalozmy ze zapodamy do niej parametr 5. mozna by sie wiec spodziewac, ze ta funkcja powoduje usuniecie rekordu numer 5. no nic bardziej blednego. ta funkcja usuwa 6-tą linijke w pliku. no bo przeciez nie wazne, ze 3 pierwsze linijki to:
<?php
defincja pol
$x=0
smile.gif
czyli usuwajac 5 rekord usuwam 3 rekord
ale to pikuś. wywolajmy te funkcje z paramtrem 1 - no i definicje pol tabeli poszly w .... zniknely smile.gif

podsumowujac:
ty weź usiądz i na spokojnie przemysl to co chciales zrobic i spojrz na to co zrobiles

edit:

podoba mi sie tekst ze strony:
Cytat
DySRS pozwala na łatwe i bezpieczne przechowywanie danych.
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
Mistrig
post
Post #3





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 6.04.2006

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


No to pokolei:
2)Nie zamykam skryptu ?> dla... dobra przyznaje sie dla wygody. Po prostu fwrite zapisuje mi dane na końcu i miałbym problem z tym "?>"
3)dane są tak przechowywane, ponieważ jak nastąpi usunięcie jednego rekordu to jak to będzie potem wyglądało rekord 4 a potem rekord 6 ?
4)fakt niezbyt "intuicyjne", zostanie poprawione.
edit do edit smile.gif
No co miałem tam napisać, DySRS pozwala na trudne i niebezpieczne przechowywanie danych? smile.gif

Ten post edytował Mistrig 28.06.2006, 12:46:22
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




ad3)
No i tu sie klania sposob w jaki przechowujesz i usuwasz dane. Usuniecie u ciebie polega na wczytanie calego pliku i zapisaniu go ponownie ale juz bez danel linijki. Po co? Przeciez zeby usunac , musisz najpierw wczytac tabele poprzez select_table(). czyli tabele juz masz w pamieci, a ty przy usuwaniu wczutjesz jeszcze raz ją na nowo. skoro masz juz ja w pamieci to zrob:
http://pl.php.net/manual/pl/function.array-splice.php
usunie ci element a indexy sie zmienią na wlasciwe. potem zapisz juz tylko nową tabele.

ale i tak uwazam ze do niczego ta bazka. takie moje zdanie. a juz tekst w stylu, iz nadaje sie ona do średnich aplikacji, to lekka przesada


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

"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
Mistrig
post
Post #5





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 6.04.2006

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


Witam ponownie.
Wyszła nowa wersja (0.7) i chciałbym żebyście ponownie ocenili skrypt.
Do sciągnięcia z tąd:http://www.minidb.topworld.org/dowload.html
Go to the top of the page
+Quote Post
nospor
post
Post #6





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Pare uwag odnosnie kodu:
1) Mieszanie jezykow: usun, zapis, select, check, create,.....
sie zdecyduj

2) brak komentarzy przy funkcjach

3)
  1. <?php
  2. try
  3. {
  4. $wp=fopen('data/'.$this->baza.'/'.$this->tabela['nazwa'].'.php', 'w');
  5. if (empty($wp))
  6. {
  7. throw new Exception('Błąd! Nie moĹĽna otworzyć pliku');
  8. }
  9. }
  10.  
  11. catch (Exception $e)
  12. {
  13. echo $e->getMessage();
  14. }
  15. ?>
smile.gif
fopen nie rzuca wyjatkami, mimo tego ty przechwytujesz wyjatek na fopen. czemu? po krotkiej analizie kodu widac czemu: bo jesli fopen zwroci false to ty sam generujesz wyjatek. no mialoby to sens, gdyby ten wyjatek szedl na zewnatrz. ale nie, ty ten wyjatek zaraz po wyrzuceniu przechwytujesz... gdzie sens i logika? wciskanie na hama rzeczy tylko po to by je wcisnac jest bez sensu

Do funkcjonalnosci sie nie odnosze bo sie odnosilem wczesniej a teraz nie chce mi sie brnac przez to samo 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
Mistrig
post
Post #7





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 6.04.2006

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


zaktualizowane...
Go to the top of the page
+Quote Post
nospor
post
Post #8





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




  1. <?php
  2. if (!$wp=fopen('data/'.$this->baza.'/'.$this->tabela['nazwa'].'.php', 'w'))
  3. {
  4. echo 'nie mozna otworzyc pliku';
  5. }
  6. ?>

No i teraz taki koles, co pisze "sredniej wielkosci" aplikacje, z bardzo fajną oblsugą bledow, dostaje telefon od wkurzonego zleceniodawcy, ze im na stronie zamiast aplikacji pojawia sie napis: "nie mozna otworzyc pliku". Koles jest zdziwiony, ale jak to, przeciez mam obsluge bledow, ladnie wszystko jest wyswietlane... glowi sie i glowi dojsc nei moze czemu. Bo nawet przez mysl mu nie przeszlo, ze w Twojej klasie w kodzie jest exit, ktore totalnei konczy wykonywanie skryptu...


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

"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

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 Aktualny czas: 20.08.2025 - 07:15