В этом архиве есть такой интересный календарь, при клике по дате, выскакивает окно, туда вбивается название события, и оно добавляется в нужный день. Вот как сделать чтобы это сохранялось?
Мне придётся полностью с нуля писать файл обработки события, так?
ну, в скачиваемом архиве только один пример с отправкой данных, так что да, тебе нужно будет написать свой код для работы с базой данных. сам календарь - чистый JS, ему фиолетово, откуда ты и как будешь данные слать=) а формат данных представлен
Правильнее поручить валидацию специальному классу (валидатору), а непосредственно саму логику обработки оставить отдельно.
То есть алгоритмически:
0. Пользователь вводит данные
1. Создается объект-валидатор и проверяется корректность данных
2. Если (1) отвечает, что данные в порядке, то далее создается объект-обработчик, который что-то делает с данными. Если (1) отвечает, что есть ошибка - о ней сообщается и происходит возврат к (0)
вопрос по теме - а если существует некое большое количество классов с иерархией, входящие данные для которых различны, и проверки на валидность, соответственно, тоже, то на каждый такой класс нужно городить отдельный класс-валидатор, или создать царь-класс-валидатор, который будет иметь кучу методов проверки на каждый пользовательский класс, или всё же лучше в классах создать метод типа
У хостера такая фича, что название базы образуется посредством логина в ПУ+ _то что я добавлю сам
Т.е. если логин в ПУ у меня qwerty,а я пишу mon, то она создаться с названием qwery_mon
тогда в скрипте поменяйте
define("DB_MONITORING_TABLE", 'mon');
на
define("DB_MONITORING_TABLE", 'qwerty_mon');
и не забудьте в базе данных выполнить
GRANT ALL ON qwerty_mon.* TO 'monitor'@'localhost' IDENTIFIED BY 'monmon';
для интереса решил добавить создание базы данных и таблиц из SQL скрипта.
Как это вообще через PHP реализуется? для начала я попробовал использовать запрос, как в клиенте делал - source monitoring.sql. нашло ошибки в SQL. после гугленья нашёл пример, где такой файл разбивался по точке с запятой и каждая команда запускалась отдельно, но у меня уже на строчке создания базы данных выпадает.
Error creating database: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'CREATE DATABASE IF NOT EXISTS `mon` DEFAULT CHARACTER SET UTF8' at line 1
думал глянуть, как у других реализуется, там используется pear SqlParser, я с ними пока не сталкивался, стоит ли копать туда? (Добавление)
по поводу ошибки разобрался - 'CREATE DATABASE IF NOT EXISTS `mon` DEFAULT CHARACTER SET UTF8' at line 1
а ошибка доступа через phpmyadmin... не знаю, почти не пользовался им, попробуй без первых и последних трёх строк им воспользоваться...
и проверь, что есть права для пользователя, под которым ты заходишь)
Не совсем понял, как эта штука работает
Я скопировал три этих кода в файлы, закинул их на хост
при вызове php скрипта мне писалось
Can't change db
Я вручную создал БД, и теперь php скрипт отдаёт мне четыре столбика (сервер, статус..)
в бд он ничего не создаёт (
И ещё вот. По Zabbix. Штука интересная, но она как я понял для корпоративных сетей. есть ли нечто подобное, но чтобы работал с серверами в интернете. Я пытался найти, но выбивает лишь мониторинг для кс и т.д.
первые два скрипта - это как раз СОЗДАНИЕ БД и добавление данных
то есть, подключаешься к БД через консольный клиент, и вставляешь первый скрипт полностью. он создаёт базу и таблицы, даёт права пользователю monitor
из второго скрипта обязательная часть -
это пример добавления серверов, которые нужно мониторить. первый insert создаёт записи в таблице server_t, где хранятся сущности сервера, второй - записи в url_t
один и тот же сервер можно мониторить одновременно под одному или нескольким уникальным сочетаниям host + port + timeout
теперь по поводу zabbix. что значит - для корпоративных сетей? ему, в общем то, пофигу, какие серверы мониторить. и делать это он умеет несколькими способами, кажется :
агент zabbix
SNMP
WEB-запросы(с возможностью проходить на сервере несколько действий, чтением результата и проверкой его)
ему нужна машина с базой данных, где бы он работал, и всё, остальное он может делать через интернет)