Forums / National / Russian / Тех. поддержка / Запросы документации

<<<1...56789101112>>>

Принимаем вопросы от населения

Trustmaster
#121 2012-05-01 19:53

Переменная $db_pages_thumbs пуста по факту.

May the Source be with you!
Nik Samokhvalov
#122 2012-05-01 20:10

Пля, ну точно... Я конфигурационный файл через ж*** подключал. Всем спасибо, что откликнулись.

Есть вопрос по SQL. Как максимально просто (не нагружая систему и использую ф-ции Котонти) узнать, существует ли запись? Я сделал так:

$db->query("SELECT * FROM $db_pages_thumbs WHERE paget_pageid='$id'")->numRows()

... но это явно неправильно.

P. S. Trustmaster, можешь что-нибудь на счет кропа в ПФС посоветовать? Отключить его, как я понимаю, можно только с помощью хака ядра?

Добавлено 12 часов спустя:

В админке перед удалением расширения появляется окно с вопросом о подтверждении операции. Как можно вызвать это окно?

 

Делаю в самописном модуле проверку длины строки:

cot_check(mb_strlen($productedit['product_title']) < 2, 'Error_titletooshort', 'productedit_title');

Как я понял из просмотра исходников Страниц, с помощью cot_check() проверяется условие и в случае неудачи выдаётся ошибка, верно? Если да, то из-за чего у меня может не «срабатывать» эта проверка?

Sorry for my English.
This post was edited by Veter (2012-05-02 09:25, 12 years ago)
esclkm
#123 2012-05-02 09:58

давайте туда впихнем диалоговое окноо....

littledev.ru - мой маленький зарождающийся блог о котонти.
снижение стоимости программирования и снижение стоимости производства разные вещи. Первое можно скорее сравнить с раздачей работникам дешевых инструментов, чем со снижением зарплаты
Trustmaster
#124 2012-05-02 11:06

Для окна подтверждения нужно указать для ссылки атрибут class="confirmLink" и сформировать URL с помощью функции cot_confirm_url().

Насчёт cot_check() верно. Посмотри значение условия с помощью cot_print().

Added 1 minute later:

$db->query("SELECT COUNT(*) FROM $db_pages_thumbs WHERE paget_pageid=?", array($id))->fetchColumn()
May the Source be with you!
Nik Samokhvalov
#125 2012-05-02 19:03

А почему « paget_pageid=?", array($id)) »? Зачем $id в array брать?

Добавлено 1 час спустя:

У меня cot_print() не распознаётся. В system/functions.php ф-ция отсутствует, её откуда-то ещё надо подключать?

Sorry for my English.
This post was edited by Veter (2012-05-02 20:16, 11 years ago)
Trustmaster
#126 2012-05-02 21:19

array($id) - это так уж в PHP принято, в PHP 5.4 можно было бы написать просто [$id]. Вообще всю конструкцию целиком я вставил, чтобы показать, как вставлять в запросы значения, приходящие извне, чтобы система сама их защищала от sql-инъекций.

Для того, чтобы заработал cot_print(), надо в datas/config.php включить $cfg['debug_mode'] = true.

May the Source be with you!
Macik
#127 2012-05-05 00:32

Подскажите где прочитать про «Экстра поля»? 

В частности интересуют следующие вопросы:

  • в каком формате указывать регулярные выражения (неплохобы отразить это во всплывающей подсказке)?
  • в значениях «по умолчанию» можно использовать только строковые выражения?
https://github.com/macik
правильный хостинг — https://goo.gl/fjCa1F
esclkm
#128 2012-05-05 08:45

а какие еще надобно??? для полей с датой можно +/- число указывать

для текстовых строк стоит такая штука:

            $import = ($extrafield['field_parse'] == 'Text') ? cot_import($inputname, $source, 'TXT') : cot_import($inputname, $source, 'HTM');
            if (!empty($extrafield['field_params']) && !is_null($import) && !preg_match($extrafield['field_params'], $import))

littledev.ru - мой маленький зарождающийся блог о котонти.
снижение стоимости программирования и снижение стоимости производства разные вещи. Первое можно скорее сравнить с раздачей работникам дешевых инструментов, чем со снижением зарплаты
Macik
#129 2012-05-05 12:15
#34202 esclkm:

а какие еще надобно???

Не знаю, поэтому и спрашиваю. Может там можно имя функции указать или еще что...

для полей с датой можно +/- число указывать

для текстовых строк стоит такая штука:

            $import = ($extrafield['field_parse'] == 'Text') ? cot_import($inputname, $source, 'TXT') : cot_import($inputname, $source, 'HTM');
            if (!empty($extrafield['field_params']) && !is_null($import) && !preg_match($extrafield['field_params'], $import))

Так в каком формате регулярные выражения указывать? В полном, типа:  /aa\w{1,7}/i

За что отвечает параметр «Парсинг»?

https://github.com/macik
правильный хостинг — https://goo.gl/fjCa1F
esclkm
#130 2012-05-05 18:48

парсинг там небольшая затянурвшаяся ошибка перевода - там или просто текст или парсинг страницы по умолчанию но для данного поля

littledev.ru - мой маленький зарождающийся блог о котонти.
снижение стоимости программирования и снижение стоимости производства разные вещи. Первое можно скорее сравнить с раздачей работникам дешевых инструментов, чем со снижением зарплаты
Macik
#131 2012-05-13 16:49

Понял.

Еще непонятка образовалась: создал экстра поле типа checkboxlist (илл.1), галочку обязательное поле не ставил, прописал теги в шаблон редактирования страницы. Теперь при редактировании страницы движок не дает сохранить параметры страницы, если хотя бы одна из галочек не установлена, выдает ошибку о незаполненном поле (илл.2).

зы: на всякий случай создал тикет (№938).

Добавлено 4 дня спустя:

В продолжение темы экстраполей. Сейчас для поля типа «input» в БД используется тип varchar(255), однако в отличае от «встроеных» полей экстраполя почему-то в своем шаблоне не используют аттрибут maxlength. Это потенциально может привести к потере данных. И ввести разработчика в заблуждение.

На мой взгляд надо по умолчанию этот атрибут ставить. (открыл заявку № 941).

 

 

https://github.com/macik
правильный хостинг — https://goo.gl/fjCa1F
This post was edited by Macik (2012-05-18 16:47, 11 years ago)
esclkm
#132 2012-05-26 21:29

готово macik

littledev.ru - мой маленький зарождающийся блог о котонти.
снижение стоимости программирования и снижение стоимости производства разные вещи. Первое можно скорее сравнить с раздачей работникам дешевых инструментов, чем со снижением зарплаты
Macik
#133 2012-05-30 19:36

to esclkm: спасибо.

to All: (тут в сеседней теме затронули $cfg['easypagenav']) Если не трудно в двух слова расскажите про то, когда и для каких целей используется.

 

https://github.com/macik
правильный хостинг — https://goo.gl/fjCa1F
Trustmaster
#134 2012-05-31 06:38
#34473 Macik:

to esclkm: спасибо.

to All: (тут в сеседней теме затронули $cfg['easypagenav']) Если не трудно в двух слова расскажите про то, когда и для каких целей используется.

 

Без easypagenav в ссылках паджинации по-старинке используются смещения LIMIT для MySQL: d = 0, 15, 30, 45, ...

В режиме easypagenav в ссылках паджинации фигурируют более человекопонятные номера страниц: d = -, 2, 3, 4, 5, ...

May the Source be with you!
Macik
#135 2012-06-04 12:14

Еще вопрос назрел.

Функция cot_inport(). Почему при импорте POST параметров импорт из буфера включен только для массивов?

case 'POST':
			$v = (isset($_POST[$name])) ? $_POST[$name] : NULL;
			$log = TRUE;
			if ($filter=='ARR')
			{
				if ($buffer)
				{
					$v = cot_import_buffered($name, $v, null);
				}
				return($v);
			}
			break;

 

https://github.com/macik
правильный хостинг — https://goo.gl/fjCa1F

<<<1...56789101112>>>