При удалении картинки, как передать часть url?

Всем привет.

Сделал контроллер, в нем 3 актиона, каждый актион для своего шаблона.
В каждом есть загрузка фоток, грузятся фото все в одну таблицу, я не стал отдельные таблицы делать, а сделал просто по ид, 1, 2, 3, ну и каждый id подгружаю на своей нужной странице.

admin/prozhivanie/111 - допустим тут подгружаю информацию с таблицы под id 1.
admin/prozhivanie/222 - допустим тут подгружаю информацию с таблицы под id 2.
admin/prozhivanie/333 - допустим тут подгружаю информацию с таблицы под id 3.

Все работает отлично.

Каждую фотку можно отдельно удалять, я сделал актион для удаления, но есть загвоздка, при удалении, есть пере адресация, то есть удаляет фотку и возвращает на туже страницу где удалил фото, чтоб страница обновилась.
Проблема тут:
$this->redirect('admin/prozhivanie/111/' . $prozhivanies_id)
HTTP::Redirect('admin/prozhivanie/111/', $prozhivanies_id)
как мне передавать часть url где 111, чтоб скрипт понимал на какой странице находиться и возвращал туда же, если я нахожусь тут admin/prozhivanie/222 и нажимаю удалить, надо чтоб актион на удаление картинки это понимал и вместо 111, подставлял нужный урл.

А то приходиться делать три таких контроллера для каждой странице, вот подумал как-то же можно 1 сделать, вместо трех.

Код удаления картинки
public function action_delimg()
  {
    $id = (int)$this->request->param('id');
    $images = ORM::factory('Image', $id);
    $prozhivanies_id = $images->prozhivanie_id;

    if (!$images->loaded()) {
      HTTP::Redirect('admin/prozhivanie/111/', $prozhivanies_id);
    }

    $p_db = ORM::factory('Prozhivanie', $prozhivanies_id);
    if ($p_db->image_id == $id) {
      $p_db->image_id = 0;
      $p_db->save();
    }

    @unlink('media/uploads/prozhivanie/' . $images->image);
    @unlink('media/uploads/prozhivanie/small/small-' . $images->image);
    $images->delete();
    $this->redirect('admin/prozhivanie/111/' . $prozhivanies_id);
  }


В шаблоне

Тут разные формы и плюс загрузка фоток


Удаление картинки (часть кода).
<a href="/admin/prozhivanie/delimg/<?php echo $image->id ?>">Удалить</a>
  • Вопрос задан
  • 69 просмотров
Пригласить эксперта
Ответы на вопрос 2
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
актион, prozhivanie, $prozhivanies... кошмарама...

Сделал контроллер, в нем 3 актиона, каждый актион для своего шаблона.
логичнее было бы задавать вьюшку (шаблон это обычно более общий вид, с заголовками, врапперами и тд) в зависимости от параметра, если экшны у вас одинаковые.
Ответ написан
slashinin
@slashinin
Задачи для PHP https://justcoding.ru
Попробуйте воспользоваться переменной $_SERVER['HTTP_REFERER'] — она хранит URL откуда пришел пользователь. Откуда пришел, пусть туда и возвращает.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы