![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 50 Pomógł: 0 Dołączył: 26.02.2012 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Witam wszystkich.
Otóż jestem w trakcie pisania prostej strony, która pozwala użytkownikowi zaadoptować zwierzątko i rozwijać je. Nie mam kompletnie pomysłu jak miałby wyglądać skrypt adopcji. Chodzi o to, że użytkownik zarejestrowany oczywiście może zadoptować maxymalnie 3 zwierzątką. np. 1x Amstaff 1x York 1x Ratlerek Każdy nowo zadoptowany zwierzaczek ma domyślny poziom 1. Potem napiszę skrypt, który umożliwi dokarmianie ich. I tu pojawia się moje pytanie jak najlepiej wykonać taki skrypt adopcji. Jakie pola do bazy, nowa tabelka? Od czego zacząć ten skrypt - od sprawdzenia czy jest zalogowany to na pewno. ![]() |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat Od czego zacząć ten skrypt - od sprawdzenia czy jest zalogowany to na pewno 90% pracy za tobą.... ![]() Tabele: user zwierzak user_zwierzak - ta tabela będzie łączyć usera z adoptowanym zwierzakiem. Ma miec pola: ID_USER ID_ ZWIERZAK -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 50 Pomógł: 0 Dołączył: 26.02.2012 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
No to jedziemy z kolejnymi - pewnie dla Was banalnymi pytaniami.
Tabela users: ID, Login, Hasło, Email. Tabela adoptions: login, zwierzak, id_login, id_zwierzak Mniej więcej tak to miałoby wyglądać? User u Ciebie to login u mnie. ID_Login oraz ID_Zwierzak mają się automatycznie dodawać? |
|
|
![]()
Post
#4
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
W tabeli adoptions te dwa pola:
login, zwierzak, są totalnie zbędne. Cytat ID_Login oraz ID_Zwierzak mają się automatycznie dodawać? No Twój skrypt ma je tworzyć gdy ktos będzie adoptował zwierzaka. Wówczas ty masz wygenerować rekord w tabeli adoptions
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 50 Pomógł: 0 Dołączył: 26.02.2012 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
id_login musi być takie same jak id usera z tabelki users. id_pet będzie tworzyło się automatycznie gdy użytkownik stworzy nowego zwierzaczka. pet_name użytkownik będzie za pomocą formularzu nadawał imię zwierzaczkowi. Max 25 znaków. Myślę, że dobrze zrozumiałem? ![]() |
|
|
![]()
Post
#6
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
źle...
w tabeli adoptions nie ma być żadnych autoincrement. Wartości tych pól będziesz nadawał Ty. Kluczem głównym ma być klucz złozony (id_login, id_pet) pet_name - ok Cytat id_pet będzie tworzyło się automatycznie gdy użytkownik stworzy nowego zwierzaczka. Sądziłem, że zwierzaki już będziesz miał w bazie. Czyli masz np. w tabeli PET zwierzaki:tygrys, małpa wąz ..... A koleś wybiera z nich co adoptuje
Powód edycji: [nospor]:
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 50 Pomógł: 0 Dołączył: 26.02.2012 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Czy po prostu z varcharem mam to zrobić - co jak co, ale w zapytaniach jestem cieńki. Cytat Sądziłem, że zwierzaki, a raczej ich rodzaje/gatunki już będziesz miał w bazie. Czyli masz np. w tabeli PET zwierzaki: tygrys, małpa wąz ..... A koleś wybiera z nich co adoptuje Hmm tym systemem staram wzorować się na skrypcie Smoki.Nightwood.net po wejściu w adopt.php użytkownik widzi 3 pola. - Wąż - Tygrys - Żółw No i wybiera sobie np. Węża i klika dalej, a potem ma puste pole, w ktorym może wpisać pet_name - czyli nazwę zwierzątka. No i oczywiście na jednego użytkownika przypada max 3 zwierzątka. |
|
|
![]()
Post
#8
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Ok, czyli nie mamy do wyboru zwierzaków jako takich tylko rodzaj zwierzaka.
Tabela adoptions: ID - klucz główy, autoincrement ID_LOGIN ID_PET_TYPE - czyli typ zwierzaka. ID z tabeli PET_TYPE PET_NAME -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 50 Pomógł: 0 Dołączył: 26.02.2012 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Nie jestem pewny czy tak - zaraz otworzę manual'a mysql.. |
|
|
![]()
Post
#10
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
id_login
pet_type To mają być pola liczbowe a nie varchar. Te pola to ID z odpowiedających im tabel. Nie kombinuj, tylko pisz poprawnie. I przestan dla pól liczbowych używać (8). To niczemu nie służy. -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 50 Pomógł: 0 Dołączył: 26.02.2012 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Aa, faktycznie.
Tzn. 8 jest zbędna? ![]() |
|
|
![]()
Post
#12
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
INT (25)
(25) Tez jest zbędne. Każdla liczba w nawiasie dla pól liczbowych jest zbędna http://nospor.pl/int11-kontra-int.html -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#13
|
|
![]() Grupa: Zarejestrowani Postów: 50 Pomógł: 0 Dołączył: 26.02.2012 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Zastosowałem się do wyjaśnień z Twojej strony |
|
|
![]()
Post
#14
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
A czy w tabeli LOGIN id to jest INT czy może MEDIUMINT ? Bo wcześniej pisałeś mediumint. Zdecyduj sie.
Czy typow zwierzaków będziesz miał naprawdę aż kilka miliardów, że dajesz im TYP INT? Myśle, ze tinyint z powodzeniem wystarczy. -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#15
|
|
![]() Grupa: Zarejestrowani Postów: 50 Pomógł: 0 Dołączył: 26.02.2012 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Nie, nie aż tak dużo to nie będzie z 3-4 typy.
|
|
|
![]()
Post
#16
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
No i super.
Jedyne co mnie draźni to nazwa id_login. Toż to powinno być id_user. Masz tabele user a nie tabele login. Login to pole w tabeli user -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#17
|
|
![]() Grupa: Zarejestrowani Postów: 50 Pomógł: 0 Dołączył: 26.02.2012 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
A, właśnie. Co z domyślnymi poziomami ? Nowo stworzony zwierzaczek powinien mieć jeden. Czyli stworzyć nową kolumnę
level i ustawić domyślnie 1 ? ![]() @up Poprawione Ten post edytował Wampir 28.02.2012, 14:28:30 |
|
|
![]()
Post
#18
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat Czyli stworzyć nową kolumnę Tak. Pole level typu tinyint unsigned - zakładam, że więcej niż 255 poziomów mieć nie będziesz. No chyba ,że będziesz, to wówczas daj większe pole
level i ustawić domyślnie 1 ? -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#19
|
|
![]() Grupa: Zarejestrowani Postów: 50 Pomógł: 0 Dołączył: 26.02.2012 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Oj poziomów będzie dużo więcej.
|
|
|
![]()
Post
#20
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
nie: default '1'
a: default 1 Skoro dopiero zaczynasz, to ucz się pisać poprawnie. 1 to liczba a nie tekst. http://dev.mysql.com/doc/refman/5.0/en/integer-types.html Cytat MEDIUMINT 3 -8388608 8388607 0 16777215 Kurde, co to za gra, w której ktoś może dojśc do 16mln poziomów? WOW ![]() Wiem, czepiam się, ale nie lubie bezsensu nadmiarowych pól. Cytat SMALLINT 2 -32768 32767 Czy max 65 tys nie jest już wystarczające?
0 65535 -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 07:41 |