Считал что строк в массив, прошёлся по массиву из 100 элементов, каждая итерация на уменьшает счетчик на 1 ед. до 0 или увеличивает от 0 до 100, Ка счётчик достигнет предела, считыватель следующую партию из файла со строки 101 до строки 201 и т.д
Собрать урл рекурсия не нужна, просто склеить массив через implode с разделителем / и на выходе получить /cat/cat2/cat3 порядок строк можно определить ещё при выборке через sort by parenr asc
Понятия вы попутали, одинаковая работа чего-либо в разных условиях это одно, а передача данных между разными браузерами другое, надо получить данные из одного браузера и передать в другой, такая ситуация не попадает под кросбраузерное. В таком случае надо что-бы один браузер должен инициировать запуск другого браузера с передачей аргументов.
Какая то наркомания :) с 10 надо кидать на 1-ю если нажать на следующая, а на 9 при клике на предыдущая. Здесь решается также через offset sql как с постораничной навигацией. Условно мы не показываем юзеру пагиницию, а показывает на одну больше и на одну меньше от текущей.
В localStorage пиши через js посекундно, при бездействии +/- Х время тормози счётчик и шли в бд, наводят мышку на закрыть таб тормози и шли в бд, разлогинились шли в бд.