... куки, сессии - они тут вообще ни при чем. Ваш вопрос темы должен был быть следующим: "Как работать с массивами в PHP?", потому что именно с этим, я вижу у вас проблему.
При том, что ключи и значения одинаковые, они добавляются, а не перезаписываются, т.к. в свою очередь, массивы являются элементами другого массива (родителя) и имеют уникальные ключи "0" и "1".
И как пища для размышления - продолжим второй случай:
Ammiak, для общего понимания - есть один запрос и на него один ответ. Не может быть несколько ответов на один вопрос (это же не политики ). Формируйте данные как вам удобно, а потом скомпонуйте их в один массив и передавайте его ответом.
Вы собирались передавать этот элемент в ответе на ajax-запрос? Если да, то расположение его внутри цикла не случайное? Вам надо генерировать множество таких элементов? Для чего цикл, если на выходе вам нужен всего один какой-то id-шник? И условие в нем не написано случайно?
В общем, для начала ответьте хоть на эти вопросы. А вообще, ответ можно сформировать и так:
P.S. Почему все лезут в $.ajax вместо $.post $.get?
Дело вкуса, на мой взгляд. К примеру, я вообще отказался от укороченных версий $.get() и $.post(), даже старые проекты откорректировал в связи с этим. Для каждого проекта создаю одни общие настройки с помощью $.ajaxSetup(), где указываю путь к хэндлеру, метод передачи, тип ожидаемых данных, callback-функции для beforeSend, complete и error. А далее, любая запись ajax-запроса, сводиться к такой схеме:
Но, дабы не запускать холливар, опять-таки повторю, что это дело личных вкусов, предпочтений и никоим образом не говорит о том, "что есть гуд, а что нет".
Думаю, что не в этом проблема, т.к. shell_exec возвращает null в случае ошибки выполнения, а если бы функция была отключена, то было бы предупреждение вроде:
Цитата:
Warning: shell_exec() has been disabled for security reasons
Мне нужно, чтобы комментарии обновлялись не обновляя страницу.
Не хотите вы тайны расскрывать Тогда, раз уж на часть моих наводящих вопросов ответы не получены, то вот вам ссылочка на то, как это можно сделать средствами нативного JS и вот ссылочка на то, как это можно реализовать с использованием jQuery.
P.S. На всякий случай, может пригодится информация о более новых технологиях, как например, WebSockets (статейка хоть и старовата, но суть вопроса раскрывает)