Давайте попробуем сначала!
Решил немного изменить код, а то путь слушком длинный.
Имеем:
Вид:
Код: Выделить всё
<?
.....
// получаем имена изображений изделий из базы данных
$name_bottle = Bottle::find()->asArray()->select(['name_1', 'name_2'])->all();
// формируем массив, с ключем равным полю 'name_2' и значением равным полю 'name_1'
$items = ArrayHelper::map($name_bottle, 'name_2', 'name_1');
?>
.....
//форма выпадающего списка
<div class="col-sm-8 bg-img">
<?php $form = ActiveForm::begin(['options' => ['class' => 'load']]); ?>
<?= $form->field($model, 'description')->dropDownList($items, ['name_2']); ?>
<?= Html::submitButton('Удалить изображения изделия', ['class' => 'btn btn-danger', 'name' => 'contact-button']) ?>
<?php ActiveForm::end(); ?>
</div>
Контроллер:
Код: Выделить всё
public function actionDelImgBottle()
{
$model = new DelImgBottle();
if ($model->load(Yii::$app->request->post())) {
//не могу правильно передать параметр delimgbottle(name_2)!!!
if ($model->delimgbottle(name_2)) {
Yii::$app->session->setFlash('success', 'Файлы удалены успешно!');
return $this->refresh();
}else {
Yii::$app->session->setFlash('error', 'Внимание! Файлы не удалены!!!');
}
}
return $this->render('del-img-bottle',[
'model' => $model,
]);
}
Модель:
Код: Выделить всё
<?php
namespace backend\models;
use Yii;
use yii\base\Model;
class DelImgBottle extends Model
{
public $description;
public function attributeLabels()
{
return [
'description' => 'Выбрать изделие для удаления его изображения',
];
}
//сюда надо получить параметр!!!
public function delimgbottle($name_2)
{
unlink(Yii::getAlias("@frontend/web/images/bottle/$name_2.png"));//Удаляем фото с сервера
unlink(Yii::getAlias("@frontend/web/images/bottle/{$name_2}_1.png"));
}
}
Формируется выпадающий список:
Код: Выделить всё
<option value="bbh-low">BSP</option>
<option value="krinitsa">Криница</option>
<option value="zlatBaz">Златы Базант</option>
Надо по ключу value удалить файл