Добавить новость
ru24.net
Интернет
Июнь
2019

Странности с определением ID + цикл PHP

0
Есть парсер, где в таблицу пишутся ID и прочая ерунда, реализовано так

PHP код:

 $i 0;
foreach (
$Level3 as $lev3){
  
$i++; 

Ну и где-то там далеко внизу идет инсер в базу, где в качестве ID записывается переменная $i
Так как данных много за раз парсер не сможет все окучить да и бось чтобы не забанили, поэтому решил запускать его по категориям.

В этом случае прихожу к проблеме как определить с какого ID продолжать писать.
Так как опыта еще мало, решил это как смог - так:
Цитата:

$id = $db->query("SELECT MAX(`id`) FROM `table`");
$i = array();
foreach ($id as $item) {
$i[] = $item;
}
if(!isset($i[0]['MAX(`id`)'])){
$i=0;
} else {
$i= (int)$i[0]['MAX(`id`)'];
}
Проверил, в итоге перед циклом переменная $i принимает верное значение, но вот в самом цикле начинается магия.
В категории, на которой я тестирую - 4 товара.
Если один раз запустить парсер то
если прописано $i=0; запишется 4 товара как и положено, а если мой говнокод с определением максимального ID - то вообще ничего.

Проверяем дальше - запускаем еще раз.
При $i=0; запишется как и положено еще 4 товара, но !!!
если вставить мой быдлокод с определением ID - var_dump($i); мне покажет
Цитата:

int 4
что логично и внушает оптимизм :)) но в базу добавятся еще 8 записей вместо 4. (дубли будут)
Понять этого я не могу, надеюсь на вашу помощь.



Moscow.media
Частные объявления сегодня





Rss.plus
















Музыкальные новости




























Спорт в России и мире

Новости спорта


Новости тенниса