Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Problem z punktami
marcinrm5
post
Post #1





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 3.07.2010

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


Witam. Mam mały problem przy tworzeniu tej strony: www.themostpower.xaa.pl/prezencik
Chce aby dodawało pkt po zalogowaniu się raz na 24h, ankietę można było rozwiązywać raz na 24h i by dodawały się do niej pkt po udzieleniu dobrej odpowiedzi.
Kiedy ja próbuję to zrobić to mi coś nie wychodzi :/
W mysql mam baze themostp_prezent > uzytkownicy > punkty INT(30)

Tutaj kod php z pliku index
  1. <?php
  2. include("config.php");
  3. $id = $_SESSION['id'];
  4. $nick = $_SESSION['nick'];
  5. $haslo = $_SESSION['haslo'];
  6. $punkty = $_SESSION['punkty'];
  7. $email = $_SESSION['email'];
  8. $ip = $_SESSION['ip'];
  9. $konto = $_SESSION['konto'];
  10. $data = $_SESSION['data'];
  11. if ((empty($nick)) AND (empty($haslo))) {
  12. echo '<p>Nie byłeś zalogowany albo zostałeś wylogowany<br><a href="index.php">Strona Główna</a></p>';
  13. }
  14. $user = mysql_fetch_array(mysql_query("SELECT * FROM uzytkownicy WHERE `nick`='$nick' AND `haslo`='$haslo' LIMIT 1"));
  15. $data = date("Y-m-d");
  16. mysql_query("INSERT INTO uzytkownicy WHERE (data) VALUES (NOW())");
  17. if ( $row['data'] < (time() - 3600) ) {
  18. mysql_query("update uzytkownicy set punkty = punkty + 10 where id = {$_SESSION['id']}");
  19. }
  20. if (empty($user[id]) OR !isset($user[id])) {
  21. echo '<p>Nieprawidłowe logowanie.</p>';
  22. }
  23. // tresc dla zalogowanego uzytkownika
  24. echo '<p>Nick: '.$user['nick'].'</p>';
  25. echo '<p>Posiadasz '.$user['punkty'].' pkt!</p>';
  26. echo '<p>Jesteś naszym '.$user['id'].' użytkownikiem.';
  27. echo '<p>Twój email: '.$user['email'].'';
  28. echo '<p>Twoje zarejestrowane ip: '.$user['ip'].'';
  29. echo '<p>Typ konta: '.$user['konto'].'';
  30. echo '<p>Zarejestrowany: '.$user['data'].'';
  31. echo '<p><a href="wyloguj.php">Wyloguj mnie</a></p>';
  32. ?>


A tu z gry.php
  1. <?php include("config.php");
  2. $nick = $_SESSION['nick'];
  3. $haslo = $_SESSION['haslo'];
  4. if ((empty($nick)) AND (empty($haslo))) {
  5. echo '<p>Nie byłeś zalogowany albo zostałeś wylogowany<br><a href="index.php">Strona Główna</a></p>';
  6.  
  7. }
  8. ?>
  9. <table border="0" width="300px">
  10. <tr height="50px">
  11. <td>
  12. <?php
  13.  
  14. $akcja = $_POST['akcja'];
  15.  
  16. if ($akcja != 'wyniki')
  17. {
  18. ?>
  19. <form action='gry.php' method='post'>
  20. <b>Ile rucin ma lat?</b><br>
  21. 15 <input type='radio' name='odp1' value='10'><br>
  22. 13 <input type='radio' name='odp1' value='0'><br>
  23. 18 <input type='radio' name='odp1' value='0'><br><br>
  24. </td>
  25. </tr>
  26. <tr height="50px">
  27. <td><b>Kiedy powstał skrypt "PrezenciK"?</b><br>
  28. 16.07.2011 <input type='radio' name='odp2' value='0'><br>
  29. 20.06.2011 <input type='radio' name='odp2' value='0'><br>
  30. 03.11.2010 <input type='radio' name='odp2' value='10'><br><br></td>
  31. </tr>
  32. <tr height="50px">
  33. <td><b>Skrypt był zrobiony dla?</b><br>
  34. Shift <input type='radio' name='odp3' value='10'><br>
  35. Nikogo <input type='radio' name='odp3' value='0'><br>
  36. Progo <input type='radio' name='odp3' value='0'><br></td>
  37. </tr>
  38. </table>
  39. <input type='hidden' name='akcja' value='wyniki'>
  40. <input type='submit' value='Wyslij'></form>
  41. <?
  42. }
  43. elseif ($akcja == 'wyniki')
  44. {
  45.  
  46. if ($_POST['odp1'] =="10")
  47. {
  48. $odp1 = $_POST['odp1'];
  49. }
  50. else
  51. {
  52. $odp1 = "0";
  53. }
  54. ;
  55. if ($_POST['odp2'] =="10")
  56. {
  57. $odp2 = $_POST['odp2'];
  58. }
  59. else
  60. {
  61. $odp2 = "0";
  62. }
  63. ;
  64. if ($_POST['odp3'] =="10")
  65. {
  66. $odp3 = $_POST['odp3'];
  67. }
  68. else
  69. {
  70. $odp3 = "0";
  71. }
  72. ;
  73.  
  74. $punkty = $odp1 + $odp2 + $odp3;
  75. echo "Zdobyłes(aś) <b>$punkty</b> punkty!<br>";
  76. }
  77. ?>


Pomoże ktoś? :/
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 11)
Fifi209
post
Post #2





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

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


Cytat(marcinrm5 @ 17.07.2011, 12:19:58 ) *
Kiedy ja próbuję to zrobić to mi coś nie wychodzi :/

No i jaki masz problem? Bo nie napisałeś.
Go to the top of the page
+Quote Post
toaspzoo
post
Post #3





Grupa: Zarejestrowani
Postów: 778
Pomógł: 84
Dołączył: 29.07.2010
Skąd: Gliwice / Pławniowice Mistrz niezmordowanej klawiatury.

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


Syf nie kod.

Czemu w jednym miejscu dajesz w echo "" a w drugim '' ?
Go to the top of the page
+Quote Post
marcinrm5
post
Post #4





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 3.07.2010

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


Fifi209, "Chce aby dodawało pkt po zalogowaniu się raz na 24h, ankietę można było rozwiązywać raz na 24h i by dodawały się do niej pkt po udzieleniu dobrej odpowiedzi." Czyli w gry.php na końcu masz $puinkty i żeby je dodawało do mysql.

toaspzoo, przepraszam za bałagan ale mam zamiar jeszcze tam pozmieniać pare rzeczy (IMG:style_emoticons/default/smile.gif)

Ten post edytował marcinrm5 17.07.2011, 19:10:38
Go to the top of the page
+Quote Post
xamrex
post
Post #5





Grupa: Zarejestrowani
Postów: 267
Pomógł: 1
Dołączył: 10.08.2007

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


Co to logowaniu aby było tylko raz na 24h.
To ja mam taki pomysł.
Jeśli user się zaloguje to w bazie zapisuje się czas logowania (funkcja date)
I załóżmy że się wylogował i loguje się ponownie
I teraz w pliku php masz coś takiego:
Jeśli czas w którym się loguje minus ostatni czas <24h to nie dodawać pkt.

A co do dodaniu pkt, to odczytujesz ile user ma pkt i za pomocą update dodajesz np 5pkt
Go to the top of the page
+Quote Post
marcinrm5
post
Post #6





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 3.07.2010

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


xamrex, no i teraz taki problem :/
Mam wpisane tak:
  1. include("config.php");
  2. $id = $_SESSION['id'];
  3. $nick = $_SESSION['nick'];
  4. $haslo = $_SESSION['haslo'];
  5. $punkty = $_SESSION['punkty'];
  6. $email = $_SESSION['email'];
  7. $ip = $_SESSION['ip'];
  8. $konto = $_SESSION['konto'];
  9. $data = $_SESSION['data'];
  10. if ((empty($nick)) AND (empty($haslo))) {
  11. echo '<p>Nie byłeś zalogowany albo zostałeś wylogowany<br><a href="index.php">Strona Główna</a></p>';
  12. }
  13. $user = mysql_fetch_array(mysql_query("SELECT * FROM uzytkownicy WHERE `nick`='$nick' AND `haslo`='$haslo' LIMIT 1"));
  14. $data = date("Y-m-d");
  15. mysql_query("INSERT INTO uzytkownicy WHERE (data) VALUES ($data");
  16. if ( $row['data'] < (time() - 3600) ) {
  17. mysql_query("update uzytkownicy set punkty = punkty + 10 where id = {$_SESSION['id']}");
  18. }


I nie działa :/ Ktoś pokaże błędy lub co kolwiek? :/
Go to the top of the page
+Quote Post
xamrex
post
Post #7





Grupa: Zarejestrowani
Postów: 267
Pomógł: 1
Dołączył: 10.08.2007

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


Ale co nie działa?
Jaki błąd?
Nie updatuje punktów czy co?
Go to the top of the page
+Quote Post
marcinrm5
post
Post #8





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 3.07.2010

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


Tak, dalej jest 0 pkt w mysql
Jakby nie wyświetliło obrazka - http://zapodaj.net/images/975a687fbe6b.png
(IMG:http://zapodaj.net/images/975a687fbe6b.png)

Ten post edytował marcinrm5 18.07.2011, 09:42:35
Go to the top of the page
+Quote Post
xamrex
post
Post #9





Grupa: Zarejestrowani
Postów: 267
Pomógł: 1
Dołączył: 10.08.2007

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


Obrazek nie działa.
To spróbuj sobie przez phpmyadmina takie zapytanie walnąć:

  1. UPDATE uzytkownicy SET punkty = 10 WHERE id = 1

I napisz czy zadziała


Ten post edytował xamrex 18.07.2011, 09:58:50
Go to the top of the page
+Quote Post
marcinrm5
post
Post #10





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 3.07.2010

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


Wpisałem
  1. if ( mysql_query("UPDATE `uzytkownicy` SET `punkty` = '125' WHERE `id`='1'") )
  2. {
  3. echo "Dodano 10pkt!";
  4. }
  5. else {
  6. die(mysql_error()); // zapytanie zwróciło error!
  7. echo "ERROR";
  8. }


I dalej nie działa ;? nie wiem czemu


@ już naprawiłem ^^
Powodem było
  1. if (konto == silver)
  2.  
  3. {
  4. Tutaj był powyższy kod
  5. }
  6. ;

Ale dlaczego nie chciało dodać?

Ten post edytował marcinrm5 18.07.2011, 10:03:53
Go to the top of the page
+Quote Post
Fifi209
post
Post #11





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

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


Cytat(marcinrm5 @ 18.07.2011, 11:01:19 ) *
@ już naprawiłem ^^
Powodem było
  1. if (konto == silver)
  2.  
  3. {
  4. Tutaj był powyższy kod
  5. }
  6. ;

Ale dlaczego nie chciało dodać?

A masz te dwie stałe? Bo nazwy zmiennych zaczynają się od $ czyli to były stałe, a skoro ich nie zdefiniowałeś to wywalał błąd, na przyszłość zapoznaj się z tematem:
error_reporting
Go to the top of the page
+Quote Post
marcinrm5
post
Post #12





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 3.07.2010

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


ok dzięki

temat do zamknięcia (IMG:style_emoticons/default/smile.gif)
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: 16.09.2025 - 02:13