Прочёл только первое сообщение. В голову приходит только посчитать скобки фигурные, разбить на пары их. Ну и если их число не чётное, генерировать ошибку. Именно так я и попытался бы решить эту задачу при надобности.
Чуть не забыл. Отсчет начинать после function.
P.S.
Позвольте поинтересоваться. А зачем Вам это понадобилось?
Доброго времени суток, уважаемые форумчане. В данный момент пишу анти мат. Надо бы списочек матов, так сказать подыскать. Возможно кто-то, уже сталкивался с аналогичной проблемой, пособите материалом. За ранее Вам благодарен. Большое человеческое спасибо)
Исходя из выше представленного кода, делаем вывод. Функция __autload(class) автоматически срабатывает всякий раз при вызове того или иного метода класса передаваемого в качестве аргумента функции. То есть, загружать весь код в память не надо.
Доброго времени суток, уважаемые форумчане.
Сегодня столкнулся с проблемой создания функции __autoload с рекурсивным поиском классов по вложенным директориям.
При тесте функции autoload(dir, class) вне функции автозагрузки, всё работает и находит что, надо. Но, стоит лишь поместить вызов функции autoload(dir, class) в тело функции __autoload(class) как, в дуг откуда ни возьмись, появляется куча ошибок. Типа не найден тот и тот класс.
После, в теле функции __autoload(class) пишу следующие строки
у ошибок и исключений разное назначение, хоть и выглядит что они работают одинаково (в глазах новичков). Думаю вам стоит подтянуть свои знания в области исключений.
Меня интересует, если в движке в целом определён пользовательский обработчик ошибок то, не является ли блок try/catch исполняемого класса рудиментом как, таковой? И отлавливает ли error_trigger все ошибки скрипта или это такая себе альтернатива throw new Exception? И в случае если задача обеих обработчиков аналогична то, какой из них по Вашему лучше использовать?
Доброго времени суток, уважаемые форумчане.
У меня внезапно возник вопрос. В чем заключается разница между исключениями и ошибками в PHP? И актуально ли будет использовать блок
Try && catch если уже определён set_error_handler?
Товарищи, возможно у кого-то имеется литература с подробнейшим описанием данной темы – поделитесь со мной. За ранее благодарен Вам, дорогие друзья. Огромное Вам человеческое спасибо)
P.S.
Чтобы не создавать отдельную тему, киньте ссылку на описание с подробными (разжеванными) примерами по использованию встроенных функций PHP bbcode)
Доброго времени суток, уважаемые Форумчане)
Друзья, пытаюсь создать триггер который удалял бы хвосты файлов при удалении директории но, пред моим взором навязчиво возникает мною заскриненая и к посту прикрепленная ошибка. Может это Денвер лагает и лучше его заменить Xampp(ом)?
А вот собственно и код злополучного триггера.
Мелкий, если в первом посте ваш код тогда я с вами полностью согласен. Но постольку поскольку там именно мой код без использования излюбленного вами JOIN(а) и вопрос как таковой уже давно исчерпан, тогда к чему эти танцы с бубном? Кому, чем и главное что вы пытаетесь доказать? Перед вложенным поиском строк имеет место проверка на заполненность которая была произведена посредством связки IF/COUNT, что и было сделано мной. И к чему те километры кода которые вы выложили в пред ведущем посте демонстрируя этим самым свою не компетентность. Ибо не нужен гектар кода там, где достаточно одного корректного предложения. Это мое имхо + тесты на производительность тоже на моей стороне)
Всего Вам доброго, прощевайте)
Потому как если в выше упомянутой таблице статистики нет ни одной записи, mysql_num_rows(mysql_query(ваш код)) // = 0 в любом случае
Докажите показав, как пробовали. Это не так для предложенного запроса и структуры таблиц. В результате будут все опросы, в которых не участвовал пользователь. Если ни в одном не участвовал - все опросы.
Я уверен, что мой запрос вы изменили (что логично), но не в том месте.
PS: которая из 3 таблиц - статистика? undefined variable
Право, Вы слишком высокого мнения о себе)
У меня нет ни времени, ни смысла, ни желания спорится с Вами, милейший. По сему в кратко и по сути.
Ничего и не пришлось изменять коме <> на NOT IN в своем же посте (№ 1), что в свою очередь схоже с циклами foreach, for, while в php.
Теперь залейте все предоставленные мной таблицы и сосчитайте количество не голосованых пользователем опросов при условии, что та самая таблица статистики залита но пуста то есть, не содержит не одной записи.
Результатом выполнения ниже представленного кода при условии подстановки Вашего куска
echomysql_num_rows(mysql_query("SELECT * FROM `ac_opros` WHERE `time_end` > UNIX_TIMESTAMP() AND IF((SELECT COUNT(*) FROM `ac_opros_variant_set`) > 0, `id` NOT IN (SELECT `id_file` FROM `ac_opros_variant_set` WHERE ".(isset($user->person)?"`id_user` = '{$user -> id}' OR ":" `open` = '1' AND")." `ip` = '".$_SERVER['REMOTE_ADDR']."'))"));// = Верное количество не голосованных опросов
`ac_opros` - сам вопрос и его описание,
`ac_opros_variant` - варианты ответов,
`ac_opros_variant_set` - собственно та самая статистика, которую Вы, как ни странно в упор не заметили.
Отчего же?
Тогда вам и подзапросы использовать никак нельзя. Некоторые подзапросы оптимизатор переписывает в join, потому что это заметно эффективнее.
От чего-же? В приведенном мною примере используется 2 под запроса + проверка на наличие записей в таблице статистики. Потому как если в выше упомянутой таблице статистики нет ни одной записи, mysql_num_rows(mysql_query(ваш код)) // = 0 в любом случае
Извините, решение явилось прям, как Менделееву во сне. Вот правильный код (кому интересно)
SELECT * FROM `ac_opros` WHERE `time_end` > UNIX_TIMESTAMP() AND IF((SELECT COUNT(*) FROM `ac_opros_variant_set`) > 0, `id` NOT IN (SELECT `id_file` FROM `ac_opros_variant_set` WHERE `id_user` = '{$user -> id}' OR `ip` = '{$user -> ip}'), `id` <> '0')
Благодарю все за внимание и желание помочь. Тему можно крыть) (Добавление)
Мелкий пишет:
Ja_kazanova пишет:
что-бы пользователю выводились только вопросы на которые он еще не давал ответа.
Доброго времени суток, уважаемые форумчане)
Я пишу модуль голосований для своего сайта. Буквально вчера мне понадобилось вывести голосования в категорию не голосованых. То есть, что-бы пользователю выводились только вопросы на которые он еще не давал ответа.
Но, возвращаемый результат более чем не коректен. То есть, убирается только один голосованый опрос, а остальные выводятся все равно. Если же убрать с вырежения EXISTS - возвращается ошибка под запроса, с EXISTS же под запрос эдентичен так, если-бы в конец добавить LIMIT 1. Но, мне нужно что-бы были исключены все опросы за которые текущий пользователь уже голосовал. Я слышал, что в MySQL уже имеются циклы такие как WHILE, LOOP и тп. Но раскрытую инструкцию по их использованию я со своим корявим г* интернетом я найти самостоятельо не могу. По этому у меня огромная прозьба, спецы, подскажите пльз с кодом и выше упомянутой литературки тоже подкиньте если есть. За ранее Вам благодарен, спасибо)
PS
Я бы мог все решить с помощью PHP но, хочется сделать все красиво и правильно, помогите, а)