Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [AJAX][MySQL][PHP]Problem z skryptem misji.
MeGusta
post
Post #1





Grupa: Zarejestrowani
Postów: 155
Pomógł: 0
Dołączył: 6.07.2015

Ostrzeżenie: (10%)
X----


Witam, mam problem z konstrukcją skryptu, nie wiem jakby to miało wyglądać. Dokładniej chodzi mi o to że gracz przyjmuje w zakładce misje o np. id 1 i co dalej? jak mam to zapisac w bazie? co dalej z tym zrobić? Nie chodzi mi o skrypt lecz o naprowadzenie, konstrukcje bazy lub sam pomysł co gdzie i w jaki sposób zapisywać i odpytywać.

Ten post edytował MeGusta 18.07.2015, 16:20:37
Go to the top of the page
+Quote Post
Fred1485
post
Post #2





Grupa: Zarejestrowani
Postów: 361
Pomógł: 22
Dołączył: 10.02.2015

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


No masz już id i co chcesz dokładnie osiągnąć w tej twojej grze?
Go to the top of the page
+Quote Post
MeGusta
post
Post #3





Grupa: Zarejestrowani
Postów: 155
Pomógł: 0
Dołączył: 6.07.2015

Ostrzeżenie: (10%)
X----


Chodzi mi o to załóżmy, mam questa w bazie danych wyswietam go sobie gdzies w swojej grze, i w momecie klikniecia przyjmij co ma się dziać? jak mam zapisać to w bazie ze dany gracz przyjął danego questa i ma zrobić to i to.

Ten post edytował MeGusta 18.07.2015, 16:59:49
Go to the top of the page
+Quote Post
Fred1485
post
Post #4





Grupa: Zarejestrowani
Postów: 361
Pomógł: 22
Dołączył: 10.02.2015

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


Jeśli dobrze cie rozumiem to możesz mieć dodatkową kolumnę 'przyjety' przechowującą wartosci 0 lub 1 i w zależności czy gracz przyjął to co mial na ekranie i sobie to aktualizować.
Go to the top of the page
+Quote Post
MeGusta
post
Post #5





Grupa: Zarejestrowani
Postów: 155
Pomógł: 0
Dołączył: 6.07.2015

Ostrzeżenie: (10%)
X----


Tak, tylko jeżeli tego samego questa przyjmie kilka osób lub jedna osoba kilka questów to co wtedy?
Go to the top of the page
+Quote Post
Fred1485
post
Post #6





Grupa: Zarejestrowani
Postów: 361
Pomógł: 22
Dołączył: 10.02.2015

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


No to najprościej zrób sobie osobną tabelę w bazie i do kazdego id questa przypisuj id osoby i juz. Jesli jakies inne lepsze rozwiązanie ktoś doświadczony ma to mnie poprawi
Go to the top of the page
+Quote Post
MeGusta
post
Post #7





Grupa: Zarejestrowani
Postów: 155
Pomógł: 0
Dołączył: 6.07.2015

Ostrzeżenie: (10%)
X----


Mam w jednej tabelce questy, w drugiej dane gracza. Wyglądało by to w ten sposób że w np. przy quescie o id 1 obok będzie w przyjetych id uzytkowników po przecinku czy jak?
Go to the top of the page
+Quote Post
Fred1485
post
Post #8





Grupa: Zarejestrowani
Postów: 361
Pomógł: 22
Dołączył: 10.02.2015

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


Nie bo kłóci sie to z 1nf (niatomowe wartości bys miał) zrobisz osoba tabele i przy id questa będziesz przypisywać id gracza jesli oczywiście przyjmie quest. Przy sprawdzaniu czy gracz przyjął questa sprawdzisz tylko czy jest w bazie id danego questa powiązane z id gracza.

Ten post edytował Fred1485 18.07.2015, 17:34:11
Go to the top of the page
+Quote Post
MeGusta
post
Post #9





Grupa: Zarejestrowani
Postów: 155
Pomógł: 0
Dołączył: 6.07.2015

Ostrzeżenie: (10%)
X----


Mógłbys dać przykład zapytania przyjęcia takowego questa?
Go to the top of the page
+Quote Post
Fred1485
post
Post #10





Grupa: Zarejestrowani
Postów: 361
Pomógł: 22
Dołączył: 10.02.2015

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


Od początku (IMG:style_emoticons/default/biggrin.gif)

przykładowo tabela gracze:

id|imie|nick

tabela questy:

id|opis

tabela powiazania:

id|quest_id|gracz_id

pobierasz dane questa którego cchesz wyświetlić dla gracza i wywalasz na ekran, jeśli przyjmie to aktualizujesz tabelę powiazania

  1. INSERT INTO powiazania VALUES(NULL, id_quest, id_gracza)


I dla każdego gracza masz wygodny sposób zapisu danych, jeśli chcesz sprawdzić czy dany gracz przyjął quest to zapytanie w stylu:

  1. SELECT gracz.nick, quest.opis FROM gracze, questy, powiazania WHERE quest_id.powiazania = 2 AND gracz_id.powiazania = 55 AND quest_id.powiazania = id.questy AND gracz_id.powiazania = id.gracze


Zapytania pisane z palca i raczej do poprawki drobnej (niestety też się uczę i mój poziom nie imponuje) ale główny zarys już masz (IMG:style_emoticons/default/wink.gif)

Ten post edytował Fred1485 18.07.2015, 18:04:45
Go to the top of the page
+Quote Post
MeGusta
post
Post #11





Grupa: Zarejestrowani
Postów: 155
Pomógł: 0
Dołączył: 6.07.2015

Ostrzeżenie: (10%)
X----


Mógłby ktoś poprawić ten skrypt?
Go to the top of the page
+Quote Post
Fred1485
post
Post #12





Grupa: Zarejestrowani
Postów: 361
Pomógł: 22
Dołączył: 10.02.2015

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


Jeśli szukasz gotowca to raczej nikt ci go tu nie napisze (IMG:style_emoticons/default/wink.gif) Głowny zarys ci podałem i teraz musisz sam sobie pod siebie poprawić w zaleznosci od danych w bazie i innych czynników (IMG:style_emoticons/default/wink.gif)

Ten post edytował Fred1485 18.07.2015, 18:00:34
Go to the top of the page
+Quote Post
MeGusta
post
Post #13





Grupa: Zarejestrowani
Postów: 155
Pomógł: 0
Dołączył: 6.07.2015

Ostrzeżenie: (10%)
X----


Nie chcę gotowaca, chce jedynie poprawny przykład. Jak to dobrze i w miare optymalnie zrobić.

Ten post edytował MeGusta 18.07.2015, 18:10:16
Go to the top of the page
+Quote Post
nospor
post
Post #14





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




Cytat
chce jedynie poprawny przykład.
Dostales przyklad od Freda. W czym wiec masz nadal problem?
Go to the top of the page
+Quote Post
MeGusta
post
Post #15





Grupa: Zarejestrowani
Postów: 155
Pomógł: 0
Dołączył: 6.07.2015

Ostrzeżenie: (10%)
X----


Czy robię to w poprawny sposób? Jeśli nie to prosze powiedzieć jak sprawdzac czy dany przycisk do przyjecia misji został nacisciety.

  1. echo "<td>"."<a href='?s=misje&przyjmij&id=".$q['id']."'>Przyjmij</a>"."</td>";
  2.  
  3. if (isset($_GET['przyjmij'])) {
  4. // to sie wykona zapytanie przyjmowania
  5. }
  6.  
Go to the top of the page
+Quote Post
nospor
post
Post #16





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




warto ustawic wartosc dla przyjmij:
&przyjmij=1

poza tym reszta ok.
Go to the top of the page
+Quote Post
MeGusta
post
Post #17





Grupa: Zarejestrowani
Postów: 155
Pomógł: 0
Dołączył: 6.07.2015

Ostrzeżenie: (10%)
X----


Jeszcze ostatnie pytanko, jak mogę przekazać id kliknietego questa do zapytania?
Go to the top of the page
+Quote Post
nospor
post
Post #18





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




Jak każdą zmienną do tekstu... to są podstawy php. Skoro sie bierzesz za robienie gry, to wypadaloby je poznac.
Lektura obowiązkowa: manual php

  1. $id = (int)$_GET['id'];
  2. $sql = 'blabla id='.$id.' dalsza czesc blabla';
Go to the top of the page
+Quote Post
MeGusta
post
Post #19





Grupa: Zarejestrowani
Postów: 155
Pomógł: 0
Dołączył: 6.07.2015

Ostrzeżenie: (10%)
X----


// rozwiazane

Ten post edytował MeGusta 18.07.2015, 21:21:37
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: 24.08.2025 - 13:44