Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]curl problem z post
Fifi209
post
Post #1





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

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


Witam!
Zamierzam zalogować się na swoje konto w grze: plemiona

Tak więc napisałem sobie skrypt:
  1. /*
  2. $post['user'] = 'xxx';
  3. $post['clear'] = 'true';
  4. $post['password'] = 'yyy';
  5. $post['server'] = 'pl34';
  6. $post['cookie'] = 'true';
  7. */
  8. $post = 'user=xxx&clear=true&password=yyy&server=pl34&cookie=true';
  9.  
  10. $c = curl_init();
  11. curl_setopt($c, CURLOPT_URL, 'http://www.plemiona.pl/index.php?action=login');
  12. curl_setopt($c, CURLOPT_REFERER, 'http://www.plemiona.pl/');
  13. curl_setopt($c, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 6.0; pl; rv:1.9.1.2) Gecko/20090729 desktopsmiley_2_2_5643778701369665_44_71 DS_gamingharbor Firefox/3.5.2 (.NET CLR 3.5.30729)');
  14. curl_setopt($c, CURLOPT_HEADER, true);
  15. curl_setopt($c, CURLOPT_POST, true);
  16. curl_setopt($c, CURLOPT_POSTFIELDS, true);
  17. curl_setopt($c, CURLOPT_RETURNTRANSFER, true);
  18. curl_setopt($c, CURLOPT_COOKIEFILE, 'plemiona.cookie');
  19. curl_setopt($c, CURLOPT_COOKIEJAR, 'plemiona.cookie');
  20.  
  21. $p = curl_exec($c);
  22. curl_close($c);
  23.  
  24. echo $p;


Część została objęta komentarzami, gdyż musiałem sprawdzić oba sposoby.
Problem polega na tym, że w odpowiedzi dostaję informację: Nie zaznaczono świata

Szukając rozwiązania natknąłem się na podobny problem, lecz tam nie został rozwiązany...

Pytanie brzmi: co zrobiłem źle? (IMG:style_emoticons/default/biggrin.gif)

Pozdrawiam.

Ten post edytował fifi209 23.08.2009, 13:13:01
Go to the top of the page
+Quote Post
vokiel
post
Post #2





Grupa: Zarejestrowani
Postów: 2 592
Pomógł: 445
Dołączył: 12.03.2007

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


Firefox + liveheaders
Logujesz się normalnie przez przeglądarke, patrzysz na nagłówki. Może być tak, że strona dodaje jakieś pole ukryte, albo ważne jest kliknięcie konkretnego przycisku w celu zalogowania, a nie tylko podanie danych typu login + hasło.

btw:
  1. curl_setopt($c, CURLOPT_POSTFIELDS, $post);


Ten post edytował vokiel 23.08.2009, 13:43:24
Go to the top of the page
+Quote Post
thek
post
Post #3





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Vokiel... Przecież widać wyraźnie po co kolesiowi te informacje skoro używa cURL. Koleś chce sobie napisać bota, grającego za niego. Sorki, ale jako grajacy co jakiś czas w gierki przeglądarkowe takim cheaterom nie pomagam. Ucz się sam i wtedy pisz bota, bo ja do tego ręki nie przyłożę!
Go to the top of the page
+Quote Post
Fifi209
post
Post #4





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

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


Problem rozwiązany, niedopatrzenie...
(notepad++, ctr+d i tak zostało z tym true (IMG:style_emoticons/default/haha.gif) )

Co do bota - nie, nie piszę bota. Plemiona mają zabezpieczenie przed botami.

Ten post edytował fifi209 23.08.2009, 13:51:47
Go to the top of the page
+Quote Post
thek
post
Post #5





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Nie ma czegoś takiego jak zabezpieczenie przed botami. Jest tylko takie, którego jeszcze nie rozgryziono (IMG:style_emoticons/default/winksmiley.jpg) By się w pełni zabezpieczyć, musiałbyś co akcję robić captchę, a to by wkurzyło wszystkich userów. Jeśli jej nie ma, to znaczy są stosowane tokeny, które można odczytać i nimi manipulować by obejść zabezpieczenie. W jednej z gier MMO w serwisie wp.pl niedawno przeszła niezła burza, gdy się okazało, że wielu z topowych graczy miało boty, które kontrolowały ich konta w sposób sprawiający, że byli niemal nieuchwytni dla innych. A wszystko wyszło, bo na forum odchodzący gracz podał gotowe instrukcje na konkretne akcje i powiedział kto tych botów używa. Wystarczyło zapisać stronę zanim admini skasowali temat i sobie dorobić interfejs oraz oskryptować owe instrukcje. Teraz pojawia się w tej grze co losową liczbę akcji captcha (nawet na kontach płatnych! ) i jest limit akcji na minutę by wpływ botów zminimalizować. Nie grałem w Plemiona, ale jeśli tam się co chwilę captcha nie wywala z kodem to pewnie bot już ktoś napisał i używa, a admini w błogiej niewiedzy żyją (IMG:style_emoticons/default/smile.gif) Napisanie bowiem bota do jakiejkolwiek gry przeglądarkowej to nie kwestia "czy się da?", ale "za ile?" lub "jak szybko?" i cURL gra tutaj pierwsze skrzypce zazwyczaj. Stąd właśnie wszelkie tematy zawierające w poście "pomoc, cURL, gra przeglądarkowa" są dla mnie z mostu podejrzeniem o cheaterstwo. Bo niby czemu miałbyś pisać skrypt specjalnie, skoro możesz wejśc na stronę? By wyświetlić jakieś sumaryczne informacje lub je sparsować? Przykro mi ale w takie bajki mało kto uwierzy (IMG:style_emoticons/default/smile.gif) Rozumiem, ze gracze czasem sobie tworzą pomoce nie mające być botami, ale granica między nimi jest cienka i łatwo ją przekroczyć.

Przepraszam za off-top, ale chciałem Ci wyjaśnić dlaczego uważam tak, a nie inaczej.
Go to the top of the page
+Quote Post
Fifi209
post
Post #6





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

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


Po to jesteśmy programistami aby ułatwiać sobie życie. (IMG:style_emoticons/default/winksmiley.jpg)

W każdej grze są niedopracowania, tutaj np. aby cofać zaproszenia muszę klikać. Wolę napisać skrypt, który sprawdzi datę zaproszenia i jeżeli zaproszenie jest starsze niż x dni to będzie je cofał.

Co do zabezpieczeń, wymyślili oni tak, że co jakiś czas pojawia się okienko i trzeba kliknąć w przerwane okrąg czy jakoś tak. ;d
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: 23.08.2025 - 19:40