Вы отправили ajax запрос к excerpt.php (без всяких index.php), excerpt.php вам вернет, что "POST is not empty", если откроете devtools в браузере, то в Networks увидите ответ.
index.php вы вероятно вызываете в браузере, да он обработает excerpt.php, но при этом вызове ничего post-ом не передавалось (ajax ведь здесь уже не при чем).
Т.е. все работает и передается на сервер, но вы ожидаете не то, что должно происходить.
Просто возьмите .htaccess для любого фреймворка. Если по указанному пути файл не найден, то запрос будет отправлен на index.php. Запрашиваемый адрес в итоге не изменится и Item1 сможете извлечь без проблем.
Проверьте что в этих переменных перед условием (дебаггером или просто var_dump сделайте)
А закомментированный код ничего важного не несёт в себе?
Несет, но не для перенаправления. Возможно на moderator.php тоже есть проверки и когда их не проходят скидывает на index.php, а для этих проверок важно то, что закомментированно. Без полной картины можно только гадать - пройдите дебаггером и все станет понятно.
Это все имхо, на локалке проще Apache с модулем php. Если нужен nginx, то я неверно написал, не nginx, а все таки php-fpm запускать от пользователя. Второй вариант не пробовал, пользую первый и он избавил от кучи сложностей, которые не хочется решать для локальной машины.
Название вашего хоста (то что возвращает hostname) или ALL для любого хоста.
Обязательно через visudo, ошибка в формате файла приводит к полной неработоспособности механизма sudo. visudo выполняет проверку формата перед записью, поэтому убережет от такой проблемы. И заранее озаботьтесь путями восстановления, если что-то сделаете не так с sudo.
d-stream, абсолютно согласен, затратная просто теоретически, исходя из того, что приходится делать с данными, плюс сложность самих запросов. На малых данных, конечно, все будет летать, просто неизвестно как будет пользоваться автор.
artmirarmi, это понятно, будет выглядеть примерно так:
IF($id=sender_id, sender_id, recipient_id)
, но у вас еще есть условие:
WHERE ((sender_id=$id and recipient_id!=$id) or (sender_id!=$id and recipient_id=$id))
тогда, если $id = sender_id, берем sender_id, который равен $id, т.е. берем $id,
если $id != sender_id, то берем recipient_id, который по условию WHERE при $id != sender_id, равен $id, т.е. опять $id.
WTERH, да, основывается на Chromium, но автор почему-то хотел Chrome, быть может что-то привлекало именно в нем. Из существенных различий, в Chrome свой flash-player, что уже не мало.
edward_freedom, чем удобнее? Насколько знаю, это синтаксис для переменных и придется еще 2 переменные объявлять, для простых недлинных функций. Можете более подробно написать, чем лучше?
Байндинг есть, можно и через него прогнать, только что неожиданного вы боитесь получить из этих функций, что обязательно нужен байндинг? А если речь про подготовленные запросы, то автор привел просто пример, с конкретно прописанными цифрами (gligue_id = '438'), вряд ли это окончательный вариант запроса.
К тому же, как я уже написал выше, не нужно так делать, все это гораздо лучше реализуется на стороне СУБД.
Вариант ThunderCat с вычислением даты на стороне СУБД более удачный, не знаю зачем я это сделал на php. Единственное, обратите внимание на условия, у нас они с ThunderCat разные, т.к. понять ваше условие можно двояко.
Senture, тогда сделайте поле Login UNIQUE и FK должен создаться. Но логически такая структура бессмыслена, если Login уникален, то составной ключ не нужен.
index.php вы вероятно вызываете в браузере, да он обработает excerpt.php, но при этом вызове ничего post-ом не передавалось (ajax ведь здесь уже не при чем).
Т.е. все работает и передается на сервер, но вы ожидаете не то, что должно происходить.