Всего 123 791 комментарий

Василий Наумкин
30 декабря 2012, 10:53
0
Это дело я убрал, иначе любой мог бы поменять email у себя в твиттере, например, и залогиниться под нужным юзером.

То есть, это была натуральная дырка.

Сейчас для привязки дополнительных учеток юзер должен авторизоваться на сайте людбым способом. Иначе да, будет 2 юзера.
Василий Наумкин
30 декабря 2012, 10:49
0
Да, всё ок.

Тогда нужно провести диагностику сниппетом QuickEmail.
Николай Дебелов
30 декабря 2012, 10:42
0
Стоит и вроде как настроена, мне крон каждый день пишет на почту об ошибках бекапа…
>echo -e «To: user@example.com\nSubject: Test\nTest\n» | sendmail -bm -t -v

root@ruyou:/var/www/ru/data/www# echo -e «To: user@example.com\nSubject: Test\nTest\n» | sendmail -bm -t -v
LOG: MAIN
<= root@ruyou.ru U=root P=local S=312
root@ruyou:/var/www/ruyou/data/www# delivering 1TpCXE-0003PA-HX
Connecting to example.com [2001:500:88:200::10]:25… failed: Connection refused
LOG: MAIN
example.com [2001:500:88:200::10] Connection refused
Connecting to example.com [192.0.43.10]:25… failed: Connection refused
LOG: MAIN
example.com [192.0.43.10] Connection refused
LOG: MAIN
== user@example.com R=dnslookup T=remote_smtp defer (111): Connection refused
LOG: MAIN
** user@example.com: retry timeout exceeded
LOG: MAIN
<= <> R=1TpCXE-0003PA-HX U=Debian-exim P=local S=1082
LOG: MAIN
Completed
delivering 1TpCXO-0003PD-R0
Connecting to mxs.mail.ru [94.100.176.20]:25… connected
SMTP<< 220 Mail.Ru ESMTP
SMTP>> EHLO ruyou.ru
SMTP<< 250-mx105.mail.ru ready to serve
250-SIZE 73400320
250 8BITMIME
SMTP>> MAIL FROM:<> SIZE=2139
SMTP<< 250 OK
SMTP>> RCPT TO:<bloden@mail.ru>
SMTP<< 250 OK
SMTP>> DATA
SMTP<< 354 Go ahead
SMTP>> writing message and terminating "."
SMTP<< 250 OK id=1TpCXO-0004En-Sx
SMTP>> QUIT
LOG: MAIN
=> bloden@mail.ru (root@ruyou.ru) <root@ruyou.ru> R=dnslookup T=remote_smtp H=mxs.mail.ru [94.100.176.20] C=«250 OK id=1TpCXO-0004En-Sx»
LOG: MAIN
Completed
Василий Наумкин
30 декабря 2012, 10:31
0
VDS, значит.

А почта там настроена, Sendmail установлен? Пробовал почту из консоли отправлять?
echo -e "To: user@example.com\nSubject: Test\nTest\n" | sendmail -bm -t -v
Николай Дебелов
30 декабря 2012, 10:25
0
Да, на экран выводится сообщение с номером заказа, и да, в админке появляется…
А где в логах?
/var/www/anton/data/www/usbit.ru/core/cache/logs тут только
[2012-12-27 04:20:25] (ERROR @ /index.php) Could not cache resource 44
[2012-12-27 11:37:18] (ERROR @ /index.php) Could not cache resource 1
[2012-12-27 11:52:11] (ERROR @ /index.php) Could not cache resource 1
[2012-12-27 12:00:14] (ERROR @ /index.php) Could not cache resource 1
[2012-12-27 12:07:28] (ERROR @ /index.php) Could not cache resource 1

В логах VDS — cs.groza.ru/log.log — не одного упоминания про почту…
Василий Наумкин
30 декабря 2012, 08:40
0
Если написать, что именно нужно — желающих обычно больше.
Василий Наумкин
30 декабря 2012, 08:33
0
Должно работать. На экран выводится сообщение, что заказ принят? Заказ в админке появляется?

Если всё ок, и нет только писем — смотри логи на предмет ошибок работы почты.
Василий Наумкин
29 декабря 2012, 19:06
1
0
Крайне полезно делать
$c->prepare();
echo $c->toSql();
die;
Будет дамп SQL запроса, который можно загонять для проверки в phpmyadmin.
Дмитрий Баданин
29 декабря 2012, 19:01
0
Журнал пустой. Ошибок нет.
Дмитрий Баданин
29 декабря 2012, 19:01
0
Вот так
$c->select($this->modx->getSelectColumns('TdTypes','TdTypes'))
как раз получилось.
Только поле name таблицы TdTypes затерло поле name таблицы TdItems при выводе. Видимо в алиасах дело. Поразбираюсь, спасибо за помощь.
Василий Наумкин
29 декабря 2012, 18:40
1
0
Попробуй еще
$c->select($this->modx->getSelectColumns('TdTypes','TdTypes'));
Василий Наумкин
29 декабря 2012, 18:37
0
Смотри лог, по любому выбираешь несуществующий столбец.

xPDO такие ошибки пишет в системный журнал.
Дмитрий Баданин
29 декабря 2012, 18:31
0
Попробовал строкой. В консоль попало только это
{"total":"1","results":[]}
Если закомментировать строку с select, то выводится это
{"total":"1","results":[{"id":14,"enabled":1,"created":"-1-11-30 00:00:00","updated":"-1-11-30 00:00:00","ended":"-1-11-30 00:00:00","cid":3,"tid":3,"fid":0,"name":"\u0422\u0435\u0441\u0442\u043e\u0432\u044b\u0439","description":""]}}
Функция целиком выше.
Василий Наумкин
29 декабря 2012, 15:27
0
xPDOQuery::select() принимает только строку. В документации была опечатка, уже поправил.

То есть:
$c->select('id,name,TdTypes,updated,enabled');
Дмитрий Баданин
29 декабря 2012, 13:51
0
Вот такой код не срабатывает — results 0.
public function prepareQueryBeforeCount(xPDOQuery $c) {			
		$c->select(array('id','name','TdTypes','updated','enabled'));
		$c->innerJoin('TdTypes','TdTypes','TdItems.tid=TdTypes.id');
		return $c;
    }
Пробовал и такой вариант:
$c->select(array('columns'=>array('id','name','TdTypes','updated','enabled')));
и такой
$c->select('id','name','TdTypes','updated','enabled');
Может быть определяю неверно, может не в той функции определяю. Подскажи, пожалуйста.
Василий Наумкин
29 декабря 2012, 13:33
0
Да, конечно нужно не только объединить таблицы, но и выбрать из них нужные данные.
Дмитрий Баданин
29 декабря 2012, 13:25
0
Немного неясно как делать соединения.
Сделал innerJoin как в последнем примере. Смотрю в консоли — поля связанной таблицы по-прежнему не возвращает. Может быть нужно в $c->select прописывать в классе getlist?
Алексей Хребтов
29 декабря 2012, 10:13
0
Чтобы не плодить тем, спрошу здесь.
В заметках про версию 0,3,0 написано
«При регистрации нового юезра добавлена проверка по email. Если такой адрес уже есть — учетка приклеится к нему.»
Я через минишоп, делаю заказ, создается пользователь с указанным email. Потом логинюсь через HybridAuth с провайдера у которого учетка с этим же email. В итоге имею 2 пользователей с одинаковым email-ом (разные логины).
Минишоп в качестве логина подставляет email, а HybridAuth берет у провайдера логин.
Как не создавать пользователя если уже такой есть email?
Алексей Хребтов
29 декабря 2012, 08:47
0
В том и проблема что ошибок не было. Хотя была одна, когда вызывал снипет HybridAuth с провайдером которого уже удалил.<cut/>
А так по логике и не должно было быть ошибок в системном журнале, т.к. ошибка direct_uri_mismatch происходила на стороне сервисов (Гугл, Яндекс) и до моего сайта ответ не доходил. А вот с мейлом когда ключ создал некорректно, и появлялся белый экран, почему не появилась запись в журнале не могу понять.
Василий Наумкин
28 декабря 2012, 23:24
0
Юля, не мучайтесь — на Windows это работать не будет. Ну или будет, но через одно место и после многих танцев с бубном.

Если нет желания покупать GNU/Linux тестовую площадку в интернетах, ознакомьтесь хотя бы с виртуальной машиной.

Учитывая, что 99% сайтов MODX работают на Linux — эти знания себя ещё окупят!