Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] CURL Logowanie + dodanie posta na forum...
Forum PHP.pl > Forum > Przedszkole
dron
Mam taki problem wymyśliłem sobie aby skrypt pobierał mi dane z bloga i dodawał mi je na forum do konkretnego tematu np. Wiadomości dnia.
Wszystko dizała prawie... mianowicie jak pierwszy raz się loguje usunę np. pliki cookie i skrytp wchodzi pierwszy raz na forum to wykona się logowanie ale niestety zamiast wykonać dodawanie posta wyświetla mi stronę pobraną w curl że zalogowałem się i przekierowywuje mnie na stronę główną forum już zalogowanego. Jak ponownie wykonam skrypt posta dodaje do tematu od razu. Kłopot mam jedynie jak ciasteczko wygaśnie albo pierwszy raz się loguje jak rozwiązać ten problem questionmark.gif

  1. $config['address'] = 'http://localhost/phbb3/';
  2.  
  3. $path['cookie'] = dirname(__FILE__).'/cookies.txt';
  4.  
  5. $post['username'] = '\'Wladimir\'';
  6. $post['password'] = 'haslo';
  7. $post['redirect'] = '';
  8. $post['login'] = 'Zaloguj';
  9.  
  10. $ch = curl_init($config['address'].'ucp.php?mode=login');
  11. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0);
  12. curl_setopt($ch, CURLOPT_POST, 1);
  13. curl_setopt($ch, CURLOPT_HEADER, 1);
  14. curl_setopt($ch, CURLOPT_COOKIEFILE, $path['cookie']);
  15. curl_setopt($ch, CURLOPT_COOKIEJAR, $path['cookie']);
  16. curl_setopt($ch, CURLOPT_POSTFIELDS, prepare_request($post));
  17. curl_exec($ch);
  18.  
  19.  
  20.  
  21.  
  22. function prepare_request($query)
  23. {
  24. if(is_array($query) && !empty($query))
  25. {
  26. foreach($query as $key => $value)
  27. {
  28. $query[$key] = urlencode($key).'='.urlencode($value);
  29. }
  30.  
  31. return implode('&', $query);
  32. }
  33.  
  34. else
  35. {
  36. return false;
  37. }
  38. }
  39.  
  40. #W tym momencie pobieram dane i dodaję post do konkretnego tematu...
  41. $ch1 = curl_init($config['address'].'posting.php?mode=reply&f=2&t=2');
  42. curl_setopt($ch1, CURLOPT_RETURNTRANSFER, 1);
  43. curl_setopt($ch1, CURLOPT_HEADER, 0);
  44. curl_setopt($ch1, CURLOPT_FOLLOWLOCATION, 1);
  45. curl_setopt($ch1, CURLOPT_COOKIEFILE, $path['cookie']);
  46. curl_setopt($ch1, CURLOPT_COOKIEJAR, $path['cookie']);
  47. $result1= curl_exec($ch1);
  48.  
  49. .......
  50.  


Z góy dziękuję za wszelaką pomoc
YourFrog
Jeżeli to twoje forum to dodawaj bezpośrednio do bazy danych post. Ale osobiście mi to śmierdzi próba napisania spamera na fora oparte o jakiś tam silnik.
dron
To nie jest mój blog tylko GDDKiA i chcę pobierać newsy z ich strony cytując żródło do tematu Przetargi GDDKiA na moim forum...
Ale spoko poradziłem sobie rozwiązałem to tak że najpierw loguje się potem wywołuje strone główną forum skrypt czeka 10sek i wywołuje dopiero temat na forum
YourFrog
Nie zrozumieliśmy się. Ja pisałem że skoro FORUM jest twoje to mu bezpośrednio to bazy wrzucaj dane. Nie napisałem nic o tym skąd i jak te dane pobierasz.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.