php - 如何将 $_FILES 绑定(bind)到 Phalcon 表单?

标签 php forms validation file-upload phalcon

我有这部分代码:

if ($this->request->isPost() && $this->request->hasFiles()) {
    $post = $this->request->getPost();
    $file = $this->request->getUploadedFiles();
    if ($form->isValid($post)) {
        $form->bind((array) $this->request->getPost(), $entity);
        $entity->save();

        // Do some other stuff
    }
}

有没有办法将 $file 传递给 Phalcon\Forms\Form 对象? 或者检查包含文件和文本的表单是否有效的另一种做法?

最佳答案

要验证文件,您必须使用 FileValidator 类作为此示例:

$file = new FileValidator([
        'maxSize' => '10M',
        'messageSize' => _('Your file is huge. Max allowed is 10 Mb'),
        'allowedTypes' => ["image/jpeg", "image/png"],
        'messageType' => _('File type is not permitted. Try with JPG, GIF, etc..'),
        'messageEmpty' => _('Cannot be empty. Please upload a file')
]);

$this->validator->add('filesInputName', $file);
$messages = $this->validator->validate($_FILES);

关于php - 如何将 $_FILES 绑定(bind)到 Phalcon 表单?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37334666/

相关文章:

javascript - 我应该在多大程度上依赖客户端验证?

javascript - 正则表达式使用javascript为每个字符匹配不同的集合

具有多个 SQL 语句 : $db->Query() works, $this->db_sqlite->query() 的 PHP/SQLite 失败

javascript - 根据内容查找登录表单

c# - 为什么 NotNullValidator 不起作用?

PHP 表单输入过滤

python - 如何在 Tornado 中获取表单 POST 输入?

php - 迁移后 CodeIgniter 空白屏幕

php - (Laravel)根据开始日期检查今天是否在两个日期之间

php - 使用 Symfony,我可以检查页面加载时打开和关闭的数据库连接数吗?