Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP] skrypt zadań nie działa jak powinien
Th0e
post
Post #1





Grupa: Zarejestrowani
Postów: 122
Pomógł: 0
Dołączył: 16.09.2012

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


Witam. stworzyłem skrypt zadań, jednak jeśli wykonamy zadanie pierwsze, to złoto nam doda, jednak zawartość kolumny "zadanie" i "wykonanezadania" ustawi na 0, chociaż jest napisane by podało co innego. Przez co gracz może brać dane zadanie bez końca i zgarniać nagrodę. Po wzięciu zadania normalnie wysyła do kolumny "zadanie" informacje o wziętym zadaniu. oto kod:


  1. <strong>PODNIEŚ SWOJE MORALE!</strong>
  2. <br /><a>zadanie 1.</a>
  3. <form method="post">
  4. <input type="hidden" name="zc01" value="zc01" />
  5. <input type="submit" value="rozpocznij zadanie!" />
  6. </form>
  7.  
  8. <strong>DOŁĄCZ DO GILDII!</strong>
  9. <br /><a>zadanie 2</a>
  10. <form method="post">
  11. <input type="hidden" name="zc02" value="zc02" />
  12. <input type="submit" value="rozpocznij zadanie!" />
  13. </form>
  14.  
  15. <strong>ZYSKAJ HONOR!</strong>
  16. <br /><a>zadanie 3</a>
  17. <form method="post">
  18. <input type="hidden" name="zc03" value="zc03" />
  19. <input type="submit" value="rozpocznij zadanie!" />
  20. </form>



  1. <?php
  2.  
  3. $graczyk = mysql_query("SELECT * FROM uzytkownicy WHERE `nick`='$nick'"); // pobranie danych o graczu
  4. $gracz = mysql_fetch_array($graczyk);
  5. $wykonane_zadanka = explode(",", $gracz['wykonanezadania']);
  6.  
  7. if(isset($_POST["zc01"]) && $wykonane_zadanka !== 'zc01'){ //jeśli button kliknięty - zapisze dane o pobraniu zadania.
  8. mysql_query("update uzytkownicy set zadanie= 'zc01' WHERE nick='$nick'")or die(mysql_error());
  9. header("Location: miasto_czlowiek.php?co=wzietozadaniezc01");
  10. }
  11.  
  12. if(isset($_GET["co"]) && $_GET["co"] == "wzietozadaniezc01") { //info że zadanie zostało zaakceptowane
  13. echo "zadanie PODNIEŚ SWOJE MORALE, zostało akceptowane. ";
  14. }
  15.  
  16. //zadanie 02
  17.  
  18. if(isset($_POST["zc02"]) && $wykonane_zadanka !== 'zc01'){ //jeśli button kliknięty - zapisze dane o pobraniu zadania.
  19. mysql_query("update uzytkownicy set zadanie= 'zc02' WHERE nick='$nick'")or die(mysql_error());
  20. header("Location: miasto_czlowiek.php?co=wzietozadaniezc02");
  21. }
  22.  
  23. if(isset($_GET["co"]) && $_GET["co"] == "wzietozadaniezc02") { //info że zadanie zostało zaakceptowane
  24. echo "zadanie DOŁĄCZ DO GILDII, zostało akceptowane. ";
  25. }
  26.  
  27. //zadanie 03
  28.  
  29. if(isset($_POST["zc03"]) && $wykonane_zadanka !== 'zc03'){ //jeśli button kliknięty - zapisze dane o pobraniu zadania.
  30. mysql_query("update uzytkownicy set zadanie= 'zc03' WHERE nick='$nick'")or die(mysql_error());
  31. header("Location: miasto_czlowiek.php?co=wzietozadaniezc03");
  32. }
  33.  
  34. if(isset($_GET["co"]) && $_GET["co"] == "wzietozadaniezc03") { //info że zadanie zostało zaakceptowane
  35. echo "zadanie ZYSKAJ HONOR, zostało akceptowane. ";
  36. }
  37.  
  38. //nagroda za wykonanie zadanie pierwszego
  39. if($gracz['level'] >= '10' && $gracz['zadanie'] == "zc01" && $gracz['wykonanezadania'] !== "zc01" ){
  40. mysql_query("update uzytkownicy set zadanie= "wykonane", wykonanezadania=`wykonanezadania` + "zc01" WHERE nick='$nick'")or die(mysql_error());
  41. header("Location: miasto_czlowiek.php?co=wykonanozadaniezc01");
  42. }
  43.  
  44. if(isset($_GET["co"]) && $_GET["co"] == "wykonanozadaniezc01") {
  45. echo "<br />Gratulacje! wykonałeś zadanie PODNIEŚ SWOJE MORALE!";
  46. }


Ten post edytował Th0e 17.10.2012, 17:05:58
Go to the top of the page
+Quote Post

Posty w temacie


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: 6.10.2025 - 20:36