![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 122 Pomógł: 0 Dołączył: 16.09.2012 Ostrzeżenie: (0%) ![]() ![]() |
Witam. Bawie się ostatniow PHP i chciałbym zrobić takie coś, że gdy wpisujemy do pola 1 i wysyłamy to za każdym razem do pewnej zmiennej dodaje nam pewną wartość. oto mój skrypt (nie śmiejcie sie - bawie się w robienie gry (IMG:style_emoticons/default/biggrin.gif) )
Kod <?php $level = 1; $exp = 0; if ($exp > 100) $level +=1; ?> <h2>walka</h2> <form method="post" /> <input type="text" name="wartosc" /> <input type="submit" value="walcz!" /> <?php $otrzymane = $_POST['wartosc']; if ($otrzymane == 1) { $exp += 10; } ?> <h2>statystyki postaci</h2> <?php echo "poziom $level <br />"; echo "doswiadczenie $exp <br />"; ?> jak widać za każdym razem gdy wyślemy w formularzu 1 powinno nam dodać 10 do zmiennej exp. a dodaje to tylko raz, potem już nie. za pewne trzeba to zrobić jakoś z pętlą, ale próbowałem i nie mogę sobie poradzić. Nagrodzę lajkami. Pozdrawiam. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 48 Pomógł: 12 Dołączył: 7.03.2012 Ostrzeżenie: (0%) ![]() ![]() |
Potrzebujesz bazy danych ; )
A jeśli to tylko zabawa to możesz pobawić się sesjami, ale miej świadomość że dane w sesji nie są trwałe ;] |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 122 Pomógł: 0 Dołączył: 16.09.2012 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 1 168 Pomógł: 126 Dołączył: 5.02.2010 Skąd: Świdnica Ostrzeżenie: (0%) ![]() ![]() |
Dokładnie, najlepsze rozwiązanie - baza danych
Tworzysz sobie tam tabele z kolumną np USER/EXP Uzupełniasz ją początkowo np Janek/0 a później za każdym razem, akcja po Twoim kliku robi UPDATE w bazie i dodaje do tego co jest w EXP + 10. Ewentualnie możesz się bawić z jakimś plikiem txt - obsługa file w php... tylko niestety też musisz się douczyć. Ten post edytował Szymciosek 19.09.2012, 20:03:06 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 122 Pomógł: 0 Dołączył: 16.09.2012 Ostrzeżenie: (0%) ![]() ![]() |
jeszcze jakieś propozycje?
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 1 168 Pomógł: 126 Dołączył: 5.02.2010 Skąd: Świdnica Ostrzeżenie: (0%) ![]() ![]() |
Nie ma więcej.
Za każdym wysłaniem cały plik jest przeładowywany i ładowany od nowa. Więc masz wybór: Sesje - trwałe, ale do czasu wyłączenia/wyczyszczenia przeglądarki - zależne od ustawień Cookies - Trwałe czasowo przy poruszaniu się po stronie Baza danych - najlepsze do takich rzeczy Txt - może być, ale musisz zobaczyć jak się obsługuje pliki, odczytuje wiersze itd - to jest proste wystarczy poczytać. Nie wiem czy więcej propozycji dostaniesz. |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 48 Pomógł: 12 Dołączył: 7.03.2012 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 122 Pomógł: 0 Dołączył: 16.09.2012 Ostrzeżenie: (0%) ![]() ![]() |
Kod <?php $level = 1; $exp = 0; if ($exp > 100) $level +=1; ?> <h2>walka</h2> <form method="post" /> <input type="text" name="wartosc" /> <input type="submit" value="walcz!" /> <?php $potworek = 10; $otrzymane = $_POST['wartosc']; if($otrzymane == 2) $expplik = fopen("exp.txt", "w"); if($otrzymane == 1) { $exp = $exp+$potworek; file_put_contents("exp.txt",$exp); } echo $fopen = file_get_contents("exp.txt"); ?> <h2>statystyki postaci</h2> <?php echo "poziom $level <br />"; echo "doswiadczenie $exp <br />"; ?> w powyższym sposobie spróbowałem zwykłym sposobem, oraz sposobem zapisu plików. najpierw wprowadzając 2 stworzyłem plik, a potem wysyłając 1 powinno dodawać za każdym razem po 10. oba sposoby nie działają, dodaje tylko raz. widocznie trzeba się wziąć za mysql -.- |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 1 168 Pomógł: 126 Dołączył: 5.02.2010 Skąd: Świdnica Ostrzeżenie: (0%) ![]() ![]() |
Jasne, że trzeba, zdziwisz się jaki jest prosty na takim poziomie jakiego Ty oczekujesz (IMG:style_emoticons/default/wink.gif)
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 48 Pomógł: 12 Dołączył: 7.03.2012 Ostrzeżenie: (0%) ![]() ![]() |
Zapewne chodzi Ci o :
No i jeszcze pliczek na lvl chyba (IMG:style_emoticons/default/wink.gif) Żeby siepobawić to możesz tak robić, ale jesli chcesz zrobić coś co ma działać (szybko i prosto) to poczytaj o bazach danych |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 122 Pomógł: 0 Dołączył: 16.09.2012 Ostrzeżenie: (0%) ![]() ![]() |
Zapewne chodzi Ci o :
No i jeszcze pliczek na lvl chyba (IMG:style_emoticons/default/wink.gif) Żeby siepobawić to możesz tak robić, ale jesli chcesz zrobić coś co ma działać (szybko i prosto) to poczytaj o bazach danych w czym jest inny twój sposób od mojego:
? jakoś nie widzę różnicy dzięki już załapałem (IMG:style_emoticons/default/smile.gif) Ten post edytował Th0e 20.09.2012, 12:40:21 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 22:14 |