esterio, если бы код был свой, такого изврата мне не пришлось бы делать.
Пришлось перейти на другой способ (т.к. реализовать то, что хотел раньше можно только танцами с бубном и извратом страшным), хоть и немного громоздкий.
делаю ф-ции add и _add, в _add - весь функционал , а в add, всякие debug'и и прочий мусор неинтересный... (я не знаю как такой способ называется)
эххх... ладно, может быть я неправильное решение принял. Но вот представьте что у вас есть асинхронное приложение из 3к строчек. Где присутствует много эвентов, названия методов и свойств "неговорящие" (например методы val, set, setValue делают практически одно и то же) + производится загрузка данных из БД или кэша LocalStorage + присутствует большое кол-во багов (например баг, когда данные грузятся 4-5 раз (хоть и из кэша, но 4-5 раз!)).
и, я думаю что у всех возникнет желание взять под контроль эту программу и знать что происходит. Но, если просто написать везде console.log, то записи засрут console, из-за этого необходимо как-то их фильтровать. (и добавлю, что экземпляров класса A - 20+, а B - 6)
скажем так, у меня нет необходимости пошагово изучать работу программы, или где-то её останавливать, чтобы посмотреть на окружение, есть необходимость знать что произошло при том или ином клике и очень подробно знать, какой обработчик эвента запустился, когда пришли данные от сервера, и когда они были на него посланы и с какими данными
я и так пользуюсь и firebug'ом, и вывожу console.log.
но проблема в том, что выводить приходится много и багов, которые надо исправить, много. И мне необходима ф-ция включения/отключения дебага каких-то классов.
задача заключается в том, чтобы видеть что происходит в программе, как она отработала, какие данные загрузила,какие значения отправила, какие эвенты запустила, а потом отключить часть из этой информации. Если просто в методах прописать console.log'и, то консоль будет засорена, а при ещё одном баге, снова придеться писать дебаговую информацию
хочу иметь возможность включать-отключать дебаговую информацию по вызовам методов и прочее. Мне приходится так делать, т.к. досталась программа полностью асинхронная, написанная абсолютно несведущим человеком. Сейчас там происходит хаос, и мне просто необходимо знать что происходит, но засорять код я не хочу.
так же сделаны классы Adbg и Bdbg, которые наследуются от A и B соответственно.
я создал фабрику, которая при значении true в переменной DEBUG, выдает вместо A - Adbg, а вместо B - Bdbg.
Все хорошо и замечательно, пока не захочешь использовать методы из Adbg в Bdbg. В случае Bdbg получается так:
A<-B<-Bdbg
т.е. было бы изумительно, если A превратилась в Adbg
плюсы моего решения таковы, что основной код вообще не знает что его дебажут и сам он чистенький и остается понятным (классы A и B), а в классах для дебага (Adbg, Bdbg) есть только всякие логи и прочая инфа.
вопрос, есть ли ещё какие решения имеющие такой же или похожий плюс? или как проще заменить A на Adbg (в примере чуть выше)
(так же добавлю, что декоратор тут не поможет, т.к. открытых методов у меня 1-2, и ещё очень много закрытых, открывать закрытые неохота (я понимаю что в js такого понятия нету, но так проще держать все в порядке))
если такой ip будет всегда, используй strpos чтобы определеить где находится в строке двоеточие, а потом substr с 0 до результата strpos, а потом с strpos до конца
взломали что ли? Если не ошибаюсь, то "скрытая ссылка" имеется ввиду ссылка, которую на странице не видно, но которая есть в исходном коде в явном виде )
ищи всяческие лишние вещи у себя в исходном коде, там какой-нибудь js, php или вообще css )
а внешние ключи, не? по-моему они как-раз для этого и созданы
Не разобрался, как их через phpmyadmin устанавливать, да и могут ли они быть null?
насчет phpmyadmin'a не знаю как (не приходилось делать), null быть могут
Для использования внешних ключей необходимо, чтобы таблица была на движке InnoDB, и ещё несколько заморочек, с которыми лучше ознакомиться в документации и статьях разных.