Add
Описание и параметры
int CForumMessage::Add( array arFields = Array(), string strUploadDir = false, array arParams = Array() );
Создает новое сообщение с параметрами, указанными в массиве arFields. Возвращает код созданного сообщения. Метод статический.
Параметры функции
Параметр | Описание | C версии |
---|---|---|
arFields | Массив вида Array(field1=>value1[, field2=>value2 [, ..]]), где
Для первого сообщения в теме форума - обязательно передать параметр "NEW_TOPIC" => "Y". | |
strUploadDir | Каталог для загрузки файлов. Должен быть задан относительно главного каталога для загрузки. Необязательный. По умолчанию равен "forum". | |
arParams | Массив параметров. Необязательный. | 7.0.0 |
Возвращаемое значение
Возвращает код созданного сообщения. В случае ошибки добавления возвращает False.Примечания
Перед добавлением сообщения следует проверить возможность добавления методом CForumMessage::CanUserAddMessage.
Для добавления и изменения сообщения и темы рекомендуется пользоваться высокоуровневой функцией ForumAddMessage.
Смотрите также
Примеры использования
Пример 1
<? $arFields = Array( "POST_MESSAGE" => $POST_MESSAGE, "USE_SMILES" => ($USE_SMILES=="Y") ? "Y" : "N", "APPROVED" => $APPROVED, "AUTHOR_NAME" => $AUTHOR_NAME, "AUTHOR_ID" => $AUTHOR_ID, "FORUM_ID" => $FID, "TOPIC_ID" => $TID, "AUTHOR_IP" => ($AUTHOR_IP!==False) ? $AUTHOR_IP : "", "NEW_TOPIC" => "N" ); $ID = CForumMessage::Add($arFields); if (IntVal($ID)<=0) echo "Error!"; ?>
Пример 2
Если необходимо узнать ошибку:
<? $arFields = Array( "POST_MESSAGE" => $POST_MESSAGE, "USE_SMILES" => ($USE_SMILES=="Y") ? "Y" : "N", "APPROVED" => $APPROVED, "AUTHOR_NAME" => $AUTHOR_NAME, "AUTHOR_ID" => $AUTHOR_ID, "FORUM_ID" => $FID, "TOPIC_ID" => $TID, "AUTHOR_IP" => ($AUTHOR_IP!==False) ? $AUTHOR_IP : "", "NEW_TOPIC" => "N" ); $ID = CForumMessage::Add($arFields); if ($ID<=0 && $ex=$APPLICATION->GetException()) echo $ex->GetString(); ?>
Пример 3
IP адрес проходит дополнительную проверку и, если он отличается от реального IP адреса пользователя, то на форуме вместо:
IP: ###.###.###.###выводится:
IP / реальный: ###.###.###.### /Для того, чтобы этого избежать, используем дополнительное поле:
"AUTHOR_IP" => $AUTHOR_IP, "AUTHOR_REAL_IP"=> $AUTHOR_IP,
© «Битрикс», 2001-2024, «1С-Битрикс», 2024