Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] Zabezpieczenie modułu przez "nabijaniem"
fredzio90
post
Post #1





Grupa: Zarejestrowani
Postów: 251
Pomógł: 0
Dołączył: 19.02.2007

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


mam takówy problem.. robie moduł do systemu CMS podobnego do Programu Partnerskiego na stronach komercyjnych.. i mam problem...
mam 2 tabele do jednej zapisuje się zarejestrowanego usera, do drugiej zapisywane są adresy ip które odwiedziły linki PP ( domyślacie się, linki aby zbierać punkty ) i moj problem polega na zabezpieczeniu przez nabijaniem punktów przez tą samą osobe, przez te same IP.... napisałem taką funkcje:

  1. <?php
  2. function pp_view() {
  3. global $pp_tbl, $pp_conf_tbl, $goto, $PHP_SELF, $REMOTE_ADDR;
  4.  
  5.  
  6. $sql = mysql_query("SELECT * FROM $pp_tbl WHERE pp_nr='{$_GET['url']}'");
  7. while($r = mysql_fetch_array($sql)) {
  8. $points = $r['points'];
  9. $nr_pp = $r['pp_nr'];
  10. $ppnick = $r['ident']; 
  11.  
  12. $check = mysql_query("SELECT * FROM $pp_conf_tbl");
  13. while($ccc = mysql_fetch_array($check)) {
  14. $ip = $ccc['ip'];
  15. }
  16.  
  17. if($ip=='$REMOTE_ADDR') {
  18. header("Location: $PHP_SELF");
  19. } else {
  20. $sqlUp = mysql_query("UPDATE $pp_tbl SET points=points+1 WHERE ident='$ppnick'");
  21. $sqlZab = mysql_query("INSERT INTO $pp_conf_tbl SET ip='$REMOTE_ADDR', data=now()");
  22. header("Location: $PHP_SELF");
  23. }
  24. }
  25. }
  26. ?>



i niewiem jak tą funkcje przekrztałcić aby:

podczas wchodzenia w link, sprawdzane było w tabeli $pp_conf_tbl czy ip usera ktory kliknow w link PP nie znajduje się w tabeli.. jeżeli tak to żeby pokazało $PHP_SELF, a jeżeli nie to żeby dodało jego ip do bazy $pp_conf_tbl i zaaktualizowało tabele $pp_tbl a dokladnie jego pole points+1...

jak kilkam w odnosnik kierujacy do dodania punktów, dodaje się do bazy ip i aktualizuje punkty usera, lecz powinno wykrywać także czy ip usera nie jest w tabeli i uniemożliwić "nalicznie" punnktów...

Ten post edytował fredzio90 28.03.2007, 19:33:54
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: 23.08.2025 - 23:58