Mam mały problem z długim działaniu skryptu.
Pobieram kod strony przez:
(na wyciaganej stronie mam ok 300 pozycji podzielonych np po 40 na stronie)
Potem metodą preg_match_all wyciągam potrzebne dane:
sprawdza mi ile jest stron
nastepnie mam petle ktora powtarza się tyle ile jest stron, i wyciąga kolejne dane z kodu strony.
while ($ile <= $strony) { preg_match_all( "#<td class=\"kljlk\">(.+)</tr>#sU", $strona2, $obrazek, PREG_PATTERN_ORDER);
W tej petli jest nastepna która sprawdza po kolei przedmioty na tej stronie
foreach ($obrazek[0] as $val) { $t++; } for ($ile2=0; $ile2<=$t; $ile2++) { //wyciaganie potrzebnych danych i zapisywanie w bazie //sprawdzanie również czy dany element jest już w bazie, jeśli jest to go już nie zapisuje // największy problem to taki że jak dodam w tym miejscu sprawdzanie (na odwrót) czy to co w bazie jest na stronie to za dlugo to chodzi i wywala błąd. $zapytanie44 = "SELECT * FROM przedmioty"; $tytul = "".$wiersz['tytul'].""; $id = "".$wiersz['id'].""; if ($tytul == $nazwa) { } else { $sql77 = "UPDATE `nazwa tabeli`.`przedmioty` SET `zmiana` = '0' WHERE `przedmioty`.`id` = '".$id."';"; } }
I tak w skrócie to wygląda, czy da się to jakoś zoptymalizować i użyć innych metod?
Proszę o jakieś podpowiedzi i funkcje których mogę użyć.
Z góry dziękuję za pomoc, pozdrawiam.