Если это Yii2
1. Вы вызываете валидацию 2 раза каждый раз.
// первый
$model->validate()
// второй
$model->save()
Чтобы такого не было надо либо убрать прямой вызов validate, либо передавать false в вызов save.
if ($model->validate() && $model->save(false))
...
2. Нужно проверять, что вернул метод load
if ($model->load($request->post()) && $model->save()) {
// сохранили и что-то делаем
}
3. $_POST["email"] никогда не прилетит, если при выводе формы Вы делаете так:
// $model instanceof Subscription
$form->field($model, 'email')->textInput();
то в $_POST прилетит:
[
'Subscription' => [
'email' => 'some@email'
]
]
4. Валидацию на уник можно сделать так
public function rules()
{
return [
['email', 'unique'],
];
}