Tickets позволяет пользователю отправить тикет без прикрепленных фото
На сайте настроена возможность создания тикета из фронденда с прикреплением фото зарегистрирвоанным пользователем. Пользователь логинется в свой кабинет и начинает создавать тикет.
Форма заполнения фото в тикете выглядит таким образом:
Сам вызов тикета:
Форма заполнения фото в тикете выглядит таким образом:
<form class="well create" enctype="multipart/form-data" method="post" action="" id="ticketForm">
...
<div class="file-upload">
<p style="color: #E5107A !important; font-weight: bold; font-size: 12px;">You must submit at least 3 photos!</p>
<div class="ticket-form-files">
[[+files]]
<span class="error" id="files-error"></span>
</div>
</div>
</form>
Сам вызов тикета:
[[!TicketForm?
&allowedFields=`parent,profile-status,name,gender,phone,email,location,age,height,languages`
&tplFormCreate=`tickets.form.create.tpl`
&tplFormUpdate=`tickets.form.update.tpl`
&redirectUnpublished=`11`
&redirectDeleted=`11`
&tplTicketEmailBcc=`tpl.Tickets.ticket.email.bcc`
&customValidators=`imageCountValidator`
&validate=`
pagetitle:required,
gender:required,
phone:required,
email:email:required,
age:required,
hair-color:required,
height:required,
languages:required[],
files:imageCountValidator`
]]
Сниппет imageCountValidator имеет вид:<?php
$tid = (int)$_POST['tid']; //replaces the line $tid = (int)$value;
//Query the amount of images in the database table modx_tickets_files
$q = $modx->newQuery('TicketFile');
$q->where(array('class' => 'Ticket'));
$q->andCondition(array('parent' => $tid, 'deleted' => 0, 'createdby' => $modx->user->id), null, 1);
$img_count = $modx->getCount('TicketFile', $q);
if ($img_count < 3) {
//Less than 3 images found
$validator->addError($key,'You must submit at least 3 photos!');
return false;
}
return true;
Все работало хорошо до момента, пока не начали появляться тикеты, созданные с количеством фото менее 3х. В логах во время создания этих самых проблемных тикетах засветилась ошибка:/public_html/core/cache/includes/elements/modsnippet/33.include.cache.php 87
Ошибка при загрузке файла. Код ошибки: 4
При том, что тестирование при загрузке фото менее 3х, разных размеров, запрещенных форматов — всегда отрабатывает нормально. Обработка ошибки всегда производится верно. Сломал всю голову — в чем может ыбть проблема. Подскажите, кто сталкивался с подобным и куда копать? Комментарии: 6
Валидатор у вас странный. Он данные берёт из базы, а должен с фронта. Я бы проверял $_FILES на количество файлов.
Просто заменить $_POST на $_FILES.
Отсутствие каких-либо ответов наводит на мысль о необходимости перехода на modx.com. Форум как-то омертвел по-моему…
Отсутствие каких-либо ответов наводит на мысль о необходимости перехода на modx.com. Форум как-то омертвел по-моему…
А мой ответ типа не ответ? Или я по-вашему мертв?)))
с вами все Ок) в последнее время активности какой-либо вообще нет, форум умирает по-моему. На modx.com обсуждение проблем идет, здесь вообще тишина
а у тех кто здесь, нет проблем)))
аа)) ну тогда извиняйте
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.