Раньше подключался. Теперь нет, т.к.
— Место подключения выбрано из корня сайта. Лично мне, да я думаю и многим другим это не нравится. Возня с конфигами nginx или .htaccess это не дело. Сейчас же я могу самостоятельно выбирать место где буде располагаться сие чудо.
— composer.json по умолчанию лежит в корне сайта. Многие обновляются перезаписью файлов и может возникнуть много боли, когда по запарке перезатрутся нужные зависимости (composer.lock? А если в этой же запаре уже успели выполнить composer update?)
— Несмотря на подключение автозагрузчика, зависимостей у проекта нет. Даже PHPMailer, PHPThumb до сих пор в ручную обновляют. Целесообразность подобного внедрения вызывает большие вопросы.
Так composer же и так подключается до загрузки ядра, даже до загрузки конфига.
На сайтах шлеп-шлеп это и не нужно. Разве только ради самообразования.
Данное решение ориентировано в первую очередь на разработчиков дополнений.

А преимущества — чистота кода, стабильность и предсказуемость работы.
Я не работал в больших проектах. Всё по мелочам. Поэтому моё мнение может быть ошибочным. Но когда начинал изучать Lavarel или Yii или еще какой фреймворк часто казалось что в них работа с базой данных (ActiveRecord) как-то переусложнена. DBAPI мне нравиться, шлеп шлеп и в продакшен. Но раз есть обратная совместимость то всё круто. Можно будет пробовать Eloquent, возможно и я пойму преимущество такого подхода :) Спасибо за проделанную работу.
Понятно, что если делать через Eloquent, то там и escape в целом не очень то нужен, вроде как PDO сам этим займётся.
Мне 64j , тоже посоветовал в случае чего вырезать эти кавычки. Но я что-то забросил идею с PDO.
Код покрыт тестами с проверкой ответа от mysqli и pdo. По итогу полная совместимость. В том числе и на escape.
Но вообще, PDO действительно экскейпит по другому. Поэтому пришлось сделать такой хак для обратной совместимости. Но замечу, что этот хак работает только в случае если вы пытаетесь использовать PDO в режиме DBAPI. Для Eloquent стиля все работает как и задумано в Laravel.
А это значит, что мы можем теоретически использовать pdo драйвер и скрестить MODX с любой базой данных.
Я ставил эксперимент с PDO, и упёрся в то что не получается escape функцию сделать такой же как она есть в MySQLi. Потому что PDO::quote всё оборачивает в кавычки. А в ядре где-то было такое, что число обернули в кавычки, а потом кинули в $modx->db->escape. Как итог всё падало.
Так Гитхаб наше все)
А еще лучше пост здесь, на MODX.im
Думаю, многим будет интересно
Всем спасибо за отзывы, сделал.
Кому нужно обращайтесь, дам полный код))
  • avatar uin23
  • 1
Сорри, сам ступил. Все оказалось гораздо проще
<code>
$log = $user->getLog();
if ($log['EmptyPKField']) {
//Email, username or password is empty

} elseif ($log['UniqueUsername']) {
//username not unique

} elseif ($log['UniqueEmail']) {
// Email not unique

}
</code>
  • avatar uin23
  • 0
на Хабре была статья про парсинг Авито, мне кажется, это ваш вариант.
Поделись. Буду благодарен. Но поиски по решению задачи на PHP CURl продолжаются)))
phantomjs.org
Можно сделать плагином для Хрома который встраивает и выполняет js-код на нужной странице. Немного неудобно в использовании, зато всегда рабочий вариант.
У меня сейчас есть в наличии такой плагин для автопостинга у ВК, могу поделиться, только разбираться что и как работает нужно будет самому.
Если бы все так просто было.
Сайт защищен от такого парсинга.
Знаю, что сделать реально, но не хватает знаний — как)))
Видимо он хочет, чтобы все поля в запросе
pagetitle, longtitle, menutitle, parent, isfolder, published, pub_date, unpub_date, richtext, searchable, cacheable, deleted, type, template, templatename, menuindex, donthit, hidemenu, alias, contentType, privateweb, privatemgr
были с префиксом sc.
file_get_contents + PHP Simple HTML DOM Parser
Хотелось бы решение на PHP.
С прогами не смогу возиться в силу знаний, точнее их отсутствие)))
  • avatar _di
  • 0
Content Downloader
Вот они и явки и пароли :)