Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Pętla sprawdzające i oddająca numery
Forum PHP.pl > Forum > PHP
Majcon
Witam napisałem pętlę która sprawdzi czy numer jest botem jeśli tak to doda go do pliku pętla wygląda tak
  1. <?
  2. do{
  3. $plik=file("nr.txt");
  4. $ile=count($plik);
  5. for($i=($ile-1); $i<$ile; $i++) {
  6. $last = "$plik[$i]";
  7. }
  8. $lala = $last+1;
  9. $mozebot = file_get_contents("https://botapi.gadu-gadu.pl/botmaster/getUserbars/{$lala}");
  10. preg_match_all('~<errorMsg>(.*)</errorMsg>~s', $mozebot, $mb);
  11. foreach($mb[1] as $mb){
  12. if($mb == "Niepoprawny token"){
  13. $numery = file_get_contents('nrcz.txt');
  14. $dodamy = $numery."\r\n('".$lala."'),";
  15. file_put_contents('nrcz.txt', $dodamy);
  16. }}
  17. file_put_contents('nr.txt', $lala);
  18. } while($lala > 0 && $lala <= 46000000);
  19. echo "KONIEC";
  20. ?>


I jest coś takiego że jak uruchomie to przez przeglądarkę to wyskakuje po 60 że czas oczekiwania coś tam i pętla też przestaje działać może dało by się to jakoś przerobić aby szybciej działało i żeby pętla skończyła działanie gdy warunek zostanie spełniony
PrinceOfPersia
Kod
$ile=count($plik);
for($i=($ile-1); $i<$ile; $i++) {
$last = "$plik[$i]";
}


Coś masz tu namieszane. Nie wiem co chciałeś osiągnąć tą pętlą, ale to co napisałeś jest (chyba) równoważne z:
Kod
$ile=count($plik);
$last = $plik[$ile-1];


Cytat
żeby pętla skończyła działanie gdy warunek zostanie spełniony

napisz:
Kod
if ( WARUNEK )
  break;
Majcon
Pętla ma sprawdzić każdy numer od 1 do 45000000 i jeżeli numer jest potem dodaje go do pliku
  1. $ile=count($plik);
  2. for($i=($ile-1); $i<$ile; $i++)
  3. {
  4. $last = "$plik[$i]";
  5. }

to pobiera ostatnią linijke i pliku nr.txt
PrinceOfPersia
Cytat
1 do 45 000 000

ale 45 milionów iteracji w tym wypadku nie ma prawa się szybko wykonać (szczególnie, że w każdej iteracji pobierasz plik XML z serwera gadu-gadu.pl, więc to jest dodatkowy narzut). Zresztą po co ci od razu wszystkie możliwe numery gg? Do czego to potrzebujesz? Nie możesz pobierać danych nt danego numeru, dopiero wtedy, kiedy będzie on potrzebny?

edit:
to znaczy, jeśli ktoś do nas pisze, to sprawdzamy jego numer przez botapi.gadu-gadu.pl i ustalamy czy to bot? Nie dałoby się tak zrobić?
Majcon
można ale zobacz
www.forum.php.pl/Statystyki_obciazenia_i_wyciagniecie_numeru_z_wiadomosci_t214293.html
PrinceOfPersia
Aha. Ale gdzie są te wiadomości? Gadu-gadu to był przecież kiedyś taki program exe, co się odpalało po stronie klienta? To skąd to PHP w tym?
Majcon
istnieje coś takiego jak platforma BotApi która umożliwia postawienie bota na numerze gg
PrinceOfPersia
Aha. A do czego Ci robienie listy botów?
Majcon
Cenzora który by banowal jak ktoś poda numer bota
PrinceOfPersia
no tak, ale po co robić listę. Nie możesz pobrać informacji "bot" / "nie bot" dopiero jak ktoś poda konkretny numer?
Majcon
Cenzor nie byłby tak skuteczny
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.