Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php + mysql] Zapis do bazy danych z parametru, Poleceni :)
-Swirek-
post
Post #1





Goście







Napisałem skrypcik który ma po podaniu w adresie parametru np
www.costam.pl/index?id=1 zwiększyć o jeden dane w tabeli "turns"
Chodzi o to że jak by ktoś poleci komuś stronke to wzamian przybędzie mu np. 1 punkcik ;]
do tego jeśli ktoś by miał ochote to blokade na ip przez 24 godziny.
Bardzo prosze o pomoc

num to jest oczywiście pole z numerem id
turns to nazwa pola do którego ma być dodana wartość 1
a players to nazwa tabeli

$sql = mysql_connect ($dbhost, $dbuser, $dbpass);
$mysql = mysql_select_db("$dbname");
$users = loadUser($id);
{
$query="SELECT num FROM players WHERE '$id'";
$wykonaj=mysql_query($query);
$queri="UPDATE players SET turns = 'turns' + 1 where '$id'";
if(!mysql_query($queri));
saveUserDataNet($id,"turns");
}
mysql_close($sql);

Prosze pomóźcie (IMG:http://forum.php.pl/style_emoticons/default/sadsmiley02.gif)
Go to the top of the page
+Quote Post
3 Stron V   1 2 3 >  
Start new topic
Odpowiedzi (1 - 19)
dr_bonzo
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

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


Nie to forum: Gotowe skrypty > Szukam --> Przedszkole, przenosze
uzywaj odpowiedniego [ bbcode ] do wstawiania kodu
Go to the top of the page
+Quote Post
-Świrek-
post
Post #3





Goście







Ups to przepraszam za umieszczenie w złym dziale i odrazu wskazówka że chodzi o coś tupu jak było w battlefighcie (ta gierka)
Jeśli klikniesz w polecający link przybyje Ci np. kaska (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
-Swirek-
post
Post #4





Goście







Widze że i tak mi tutaj nikt nie pomoże (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)
Nie spamuje już więcej wam forum.
Sprawdze jeszcze wątek jutro
Go to the top of the page
+Quote Post
Kuziu
post
Post #5





Grupa: Zarejestrowani
Postów: 743
Pomógł: 0
Dołączył: 11.11.2003
Skąd: Toruń

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


Tworzysz 2 tabele SQL'a

1 zapisuje IP i czas w którym ktoś kliknął
2 zapisuje kto ile ma punktów

i teraz w momencie kliknięcia sprawdzasz czy takie IP nie klikało przez ostatnie 24 godziny jeśli nie to dodajesz punkt osobie która poleciła.

Dodatkowo mozesz co jakiś czas czyścić z tabeli IP wpisy starsze niż 24 godziny chyba że nie przeszkadza Ci to że będzie sie ona troche rozrastać
Go to the top of the page
+Quote Post
-Swirek-
post
Post #6





Goście







No a co z tym kodem dodawania punktu (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)
Bo chyba całkowicie go powaliłem bo coś nie działa
Go to the top of the page
+Quote Post
-Swirek-
post
Post #7





Goście







Odpowiadam jeszcze raz bo temacik umarł a ja naprawde potrzebuje help z tym kodem (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
LBO
post
Post #8





Grupa: Zarejestrowani
Postów: 1 415
Pomógł: 117
Dołączył: 7.09.2005
Skąd: Warszawa

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


0. Osoba wchodzi na stronke Usera (jego id wyciągasz z $_GET['id']) poprzez link polecający.
1. Przeszukujesz BD w poszukiwaniu ip Osoby. Jeżeli nie znalezione idziesz do pkt. 3
2. Sprawdzasz datę ostatniego kliknięcia Osoby. Jeżeli nie mineło więcej, niż 24h (lub jakikolwiek, ustalony przez ciebie okres) idź do pkt. 4.
3. Dodajesz punkt do punktacji_usera i zapisujesz (lub nadpisujesz) ip Osoby oraz obecny czas w BD.
4. Generujesz stronę.
Go to the top of the page
+Quote Post
-Swirek-
post
Post #9





Goście







$_get to znaczy jak dokładniej.
jednej linijki kodu mi brakuje jak dokładnie to wyciągnąć.
Prosze jeśli mógłbyś
Go to the top of the page
+Quote Post
-Swirek-
post
Post #10





Goście







Chyba się zarejestruje bo edytować nie moge postów.
ok wiem jak z adresu nie załapałem ale powyżej mam kod który nie działa.
i co w tym kodziku jest nie tak.
Go to the top of the page
+Quote Post
nospor
post
Post #11





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




nie mozesz pisac tak: pole='pole' + 1. 'pole' w ciapkach jest traktowane jako string a nie jako pole tabeli. no i te nie szczesne ....where $id. w where ma byc warunek, a nie sama liczba.
ma byc:
  1. <?php
  2.  
  3. $id= $_GET['id'];
  4. $sql = mysql_connect ($dbhost, $dbuser, $dbpass);
  5. $mysql = mysql_select_db($dbname);
  6. $users = loadUser($id);
  7. {
  8. $query='SELECT num FROM players WHERE pole_z_id='.$id;
  9. $wykonaj=mysql_query($query);
  10. $queri='UPDATE players SET turns = turns + 1 where pole_z_id='.$id;
  11. if(!mysql_query($queri));
  12. saveUserDataNet($id,"turns");
  13. }
  14.  
  15. ?>

za pole_z_id wstaw se nazwe pola z id.

ps: jesli jeszcze raz zaczniesz pisac kilka postów pod sobą, to mozesz sie przekonac na wlasne oczy jak wygląda zamkniety topic. Tak wiec zrob co mowiles - zarejestruj sie i edytuj (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

ps2: ogolnie ten twoj kod nadaje sie caly do przeróbki, ale ja poprawilem tylko doczesne bledy (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
-Swirek-
post
Post #12





Goście







Wielkie dzięki zaraz to wytestuje a następny post już najwyżej będzie na zarejestrowanym użytkownku (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
Swirek
post
Post #13





Grupa: Zarejestrowani
Postów: 221
Pomógł: 20
Dołączył: 4.05.2006
Skąd: Polska

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


Drobne poprawki i działa (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Dzięki Ci wielkie!!! :* (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
i teraz inny problemik.
Ip jak ustawić na 24h żeby np. się z tabeli kasował po 24h.
aha lepiej nie kasować wogóle ip tylko sprawdzać warunek tylko jak napisać warunek dla 24 godzin? w dacie

Ten post edytował Swirek 5.05.2006, 05:56:48
Go to the top of the page
+Quote Post
Luke_Star
post
Post #14





Grupa: Zarejestrowani
Postów: 129
Pomógł: 2
Dołączył: 17.01.2005

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


może cron?
Go to the top of the page
+Quote Post
Swirek
post
Post #15





Grupa: Zarejestrowani
Postów: 221
Pomógł: 20
Dołączył: 4.05.2006
Skąd: Polska

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


kurcze tylko że narazie nie mam serwera z cron jobem ;/
też o tym już myślałem alezrobie to nieco inaczej (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Zapisze do bazy danych date z dodanymi 24h.
I napisze warunek jeśli data<data+ to ma nie dodawać i zwróci wartość true jeśli zła to wartość false tzn. dodanie (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
ip ustawie w 2 polu tabeli.
Według ip będe wyszukiwał osobe.
jeśli nie znajdzie ip w bazie danych to doda ip,date+ i punkt poleconemu.
jeśli ip znajdzie to funkcja z jakimś tam innym tekstem.
Teraz się troche pobawić z kodem.
Jeśli to tak nie może być prosze o poprawke (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
LBO
post
Post #16





Grupa: Zarejestrowani
Postów: 1 415
Pomógł: 117
Dołączył: 7.09.2005
Skąd: Warszawa

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


Cytat
kurcze tylko że narazie nie mam serwera z cron jobem

Proszę.
Go to the top of the page
+Quote Post
Swirek
post
Post #17





Grupa: Zarejestrowani
Postów: 221
Pomógł: 20
Dołączył: 4.05.2006
Skąd: Polska

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


Jesteś wielki Dziękuje ;D
kolejne pytani bo poprostu jeszcze raczkuje z php (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)
Jak mam sprawdzić zgodność ip w bazie?
tzn. jaki warunek napisać w if?

Ten post edytował Swirek 6.05.2006, 10:49:18
Go to the top of the page
+Quote Post
Swirek
post
Post #18





Grupa: Zarejestrowani
Postów: 221
Pomógł: 20
Dołączył: 4.05.2006
Skąd: Polska

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


(IMG:http://forum.php.pl/style_emoticons/default/dry.gif)

  1. <?php
  2. $id= $_GET['id'];
  3. $sql = mysql_connect (localhost, user, haslo);
  4. $mysql = mysql_select_db(nazwa bazy);
  5. $ipadres = $REMOTE_ADDR;
  6. $nextclick = time() + (* 24 * 60 * 60);
  7.  
  8. $baza='SELECT id FROM polec WHERE id='.$id;
  9. $wyconaj=mysql_query($baza);
  10. if ($baza[ipadres] != $ipadres)
  11. {
  12. {
  13. $queryy='SELECT id FROM polec WHERE id='.$id;
  14. $wykonajj=mysql_query($queryy);
  15. mysql_query("UPDATE polec SET polectime = $polectime + 86400 WHERE id='.$id;");
  16. mysql_query("UPDATE polec SET ipadres = $ipadres WHERE id='.$id;");
  17.  
  18. echo "<center> Zostales wsysniety przez U.F.O o numerze $id <BR>";
  19. echo "Twój IP: $ipadres<br />";
  20. echo "Aktualna godzina:<font color=green>  ". date(' Y-m-d G:i:s') ."n";
  21. echo "</font><BR>Ponownie mozesz zostac wsysniety:<font color=red> ". date('Y-m-d G:i:s', $nextclick) ."n";
  22. echo "<BR><BR><a href=index.php><font color=blue size=2>Strona Gry<BR>ZAPRASZAMY<BR>WWW.UFO.Z.PL</a></center> ";
  23. }
  24. {
  25. $query='SELECT num FROM players WHERE num='.$id;
  26. $wykonaj=mysql_query($query);
  27. $queri='UPDATE players SET turns = turns + 1 where num='.$id;
  28. }
  29. }
  30. else
  31. echo ("<center><BR><BR> Dzis juz byles raz porwany przez UFO </center>");
  32.  
  33. ?>


I co tu jest nie tak.
wyskakuje taki blad
Warning: mysql_query(): Access denied for user 'swirek'@'localhost' (using password: NO) in /home/swirek/public_html/polec.php on line 27

Warning: mysql_query(): A link to the server could not be established in /home/swirek/public_html/polec.php on line 27

Ten post edytował Swirek 31.05.2006, 17:53:41
Go to the top of the page
+Quote Post
-Gość-
post
Post #19





Goście







Cytat
Access denied for user 'swirek'@'localhost' (using password: NO)

Jak sam blad wskazuje uzytkownik swirek laczacy sie bez hasla nie ma dostepu do serwera MySQL. Dlaczego ? Najprawdopodobniej nie masz utworzonego konta w MySQL. Jak to zrobic ? Zaloguj sie jako root w do MySQLa i wydaj nastepujace polecenie:
GRANT ALL PRIVILEGES ON *.* TO 'nazwa_utywkonika'@'localhost' IDENTIFIED BY 'haslo_uzytkownika';
Go to the top of the page
+Quote Post
Swirek
post
Post #20





Grupa: Zarejestrowani
Postów: 221
Pomógł: 20
Dołączył: 4.05.2006
Skąd: Polska

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


Konto utworzone jest
Tabele sa utworzone wszystko jest
haslo rowniez poprawne jest wiec chyba blad w kodzie
Go to the top of the page
+Quote Post

3 Stron V   1 2 3 >
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 - 15:08