... может содержать инициализацию, но инициализация должна содержать константные значения, т.е. переменные должны быть вычислены во время компиляции и не должны зависеть от информации, полученной во время выполнения для их вычисления.
В логах сервера пишется, что в лимит при p=1 подставляется 1,2, а нужно 0,2.
Страницы нумеруете от 1?
Начните с добавления проверки равенства этой переменной единице при инициализации $start (строка 9 первого листинга).
Затем ответьте на вопрос: "Почему в 13-й строке первого листинга $p присваивается, не проверяется, а присваивается значение ноль, и, после исправления этой опечатки надо ли сравнивать с нулем, а не с единицей?"
Ну а дальше будет видно
Везде потыкал (isset($_POST[' ']) ? $_POST[' '] : null) что бы пхп на индекс не ругался.
После этого ошибок ну уж точно нет (ясчитаю), но всё-ровно не работает
Потому ошибок и нет, что нет попыток обратиться к отсутствующим данным.
Ещё раз: если формируете названия dom-элементов в виде somename+number, то и обращайтесь к ним соответственно через имя с добавленным в виде суффикса числом.
Если хотите обрабатывать на стороне сервера как элемент массива - то и формируйте в js как массив.
maksqwerty, раз уж формируете имена элементов через конкатенацию - то и разбирайте через этот же оператор. (например: $_POST['material'.$i]).
Или формируйте имя тега как массив.
Подробнее: Как создать массивы в HTML <form>
Только на якорь оно само скорее всего не перейдет по ссылке
ivt32, кстати, да... приведённый код - процесс формирования страницы на сервере. До пользователя (браузера) тут дело доходит только после того, как весь цикл отработает. Так что "в процессе" пользователь повлиять при данном подходе к процесса формирования страницы не может.
И на странице в данном случае получаете 6000 строк <script>addproduct();</script>
Непорядок, однако.
Или фишка в том, что это Битрикс и все не так, как выглядит?
выйти из цикла и остановить процесс по нажатию на какую-нибудь кнопку?
Добавьте в функцию, выполняющую ajax запрос проверку "какого-либо" параметра.
А по нажатию на эту "какую-нибудь" кнопку изменяйте этот параметр. Будь то data-атрибут, наличие/отсутствие класса, содержимое специально выделенной для этого дела переменной и прочая, прочая, прочая...
LIME, все так
Есть ещё результат, выдаваемый дебаггером после неперехваченного исключения.
Те самые несколько строк последовательности вызовов...
ТС же, однако, имел ввиду, что не нашёл в описании трассировки примеров того, как её выполнять...
Там трассировка кода описана.
Но как пошагово выполнять скрипты там нету.
а разве это не одно и то же?
...
Либо в итоге видишь несколько строк трассировки, либо в IDE, что называется "вживую" - текущие значения перемененных и прочих параметров и пользуешься кнопочками "обойти фунцию", "зайти в функцию", "выполнить до курсора" и прочая-прочая...
Так что разница все-таки есть.
LIME пишет:
...сноси с "балалайке" винду и ставь Linux
Lubuntu легкий дистрибутив
это в принципе полезно будет
...
И всё равно производительность упрется в количество оперативки и скорость доступа к HDD...
Особенно если в браузерах много страничек одновременно открывать
А если есть достаточно оперативки - то и винда - не помеха
shahin, для начала проверьте значение переменной $mysqli после connectDB(), потом - значение переменной $result_set после выполнения запроса...
А гадания на кофейной гуще - ни к чему.
Call to a member function fetch_assoc() on boolean
Потому что метод, выполняющий запрос к БД вернул false.
Например: mysqli::query()
Причина - синтаксическая ошибка в сформированном запросе, либо...
Подробности можно узнать, воспользовавшись методом (или свойством), возвращающим (или содержащем) информацию об ошибке...
Например: mysqli::$error
Там и примеры есть.
Можно перед выполнением запроса просто вывести его текст в браузере и увидеть, что не так... (Добавление)
Или это был запрос, не предусматривающий возврат набора данных (insert, update), а Вы его результат по инерции fetch() скармливаете