0

私は本当に解決できない小さな問題に遭遇しました。

私はormを使用してfuelphpでビデオの削除関数を作成しました。おそらくそれはばかげていますが、idが存在しない場合にユーザーを再拡張する方法を本当に理解することはできません。

これが私のコードです

public function action_delete($id)
    {

        $deletevideo = Model_Video::find($id);

        if($deletevideo->user_id != Session::get('sentry_user')):
            Session::set_flash('fail', 'The video you want to remove is not yours, we logged this activity');
            Response::redirect(Uri::base() . "myvideos");
        else:
            unlink(realpath("users/video/" . $deletevideo->video_preview));
            unlink(realpath("users/video/" . $deletevideo->video_file));
            $deletevideo->delete();
            Response::redirect(Uri::base() . "myvideos");
        endif;
    }

html

<a href="<?php echo Uri::base(); ?>video/delete/<?php echo $myvid->id; ?>" onclick = "if (! confirm('Are your sure you want to delete this video? <?php echo $myvid->video_title; ?>')) return false;" class="btn btn-danger">Delete</a>

私はこれを達成するために人々が話しているフォーラムで見ましたが、DB::exprそれについての例を見つけることができます。

誰かが私にヒントをくれませんか?

4

1 に答える 1

0

これがあなたを動かすはずのいくつかのコードです:

$video = Model_Video::find($id);

if ( ! $video instanceof Model_Video)
{
    Session::set_flash('fail', 'The video ID is not valid!');
    Response::redirect('go/somewhere/else');
}

結果を使用する前に、結果が実際に有効なModel_Videoであるかどうかを常に確認する必要があります。

于 2012-11-06T23:41:27.587 に答える