Laravel и Javascript - Как я могу изменить идентификатор пользователя? - PullRequest
0 голосов
/ 26 октября 2018

Я новичок в Laravel. Как мне изменить идентификатор пользователя? Я пытаюсь удалить пользователей с правами администратора. В настоящее время он использует Auth :: user (id), что означает, что он использует идентификатор зарегистрированного пользователя (admin id). Я застрял, не могу понять, как я могу изменить после нажатия на кнопку, что принимает идентификатор пользователя. Некоторые вещи не используются, просто стоят там. PagesController.php

public function destroy($id){
        return $id;
        $user = Auth::user();
        $korisnik = User::findOrFail($id);

    if ($korisnik->IsAdmin()){
        if($korisnik->delete($id)){
            return redirect()->back(); 
        }
    }else{

    if ($user->delete()) {
        Auth::logout();
        $data = array(
            'title' => 'Dobrodošli,',
            'title2' => 'da biste nastavili, ulogirajte se!',

        );
        return view('pages.index')->with($data);
    }
    }
}

public function action(Request $request)
{

    if($request->ajax()){
        $output = '';
        $query = $request->get('query');
        if($query != ''){
            $data = DB::table('users')
                ->where('surname', 'like', '%'.$query.'%')
                ->orWhere('name', 'like', '%'.$query.'%')
                ->orWhere('phone', 'like', '%'.$query.'%')
                ->orderBy('id')
                ->get();
        }else {
            $data = DB::table('users')
                ->orderBy('id')
                ->get();
        }
        $total_row = $data->count();
        if($total_row > 0){
            foreach($data as $row){
                $output .= '
                    <tr>
                        <td>'.$row->surname.'</td>
                        <td>'.$row->name.'</td>
                        <td>'.$row->phone.'</td>
                        <td><button type="button" class="remove-button btn btn-danger" data-id="'.$row->id.'">
                        <div class="close">&#120;</div>
                        </button></td>
                    </tr>
                ';
            }
        }else{
            $output = '
                <tr>
                    <td align="center" colspan="5">No Data Found</td>
                </tr>
            ';
        }
        $data = array(
            'table_data'  => $output,
            'total_data'  => $total_row,
        );

        echo json_encode($data);
    }
}

вид

<div class="modal fade" id="exampleModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
    <div class="modal-dialog" role="document">
        <div class="modal-content">
            <div class="modal-header">

            </div>
            <div class="modal-body">
                <h2>{{ $modal }}</h2>
            </div>
            <div class="modal-footer">
                <button type="button" class="rem-mod btn btn-secondary" data-dismiss="modal">Zatvori</button>
                {{ Form::open(['action'=> ['PagesController@destroy', Auth::user()->id],'method' => 'POST']) }}
                {{ Form::submit('Obrišite račun', ['class' => 'bck-mod btn btn-danger']) }}    
                {{ Form::hidden('_method', 'DELETE') }}
                {{ Form::close() }}
            </div>
        </div>
    </div>
</div>
<div class="container">
    <div class="panel panel-default">
    <div class="panel-heading">Pretraži korisnike</div>
        <div class="panel-body">
            <div class="form-group">
                <input type="text" name="search" id="search" class="form-control" placeholder="Pretraži korisnike" />
            </div>
            <div class="table-responsive">
                <h3 align="center">Broj korisnika: <span id="total_records"></span></h3>
                <table id="users" class="table table-striped table-bordered">
                    <thead>
                        <tr>
                            <th>Prezime</th>
                            <th>Ime</th>
                            <th>Telefon</th>
                            <th></th>
                        </tr>
                    </thead>
                <tbody>

                </tbody>
                </table>
            </div>
        </div>    
    </div>
</div>


<script>


$(document).ready(function(){

    fetch_customer_data();

    function fetch_customer_data(query = ''){
        $.ajax({
            url:"{{ route('live_search.action') }}",
            method:'GET',
            data:{query:query},
            dataType:'json',
            success:function(data)
            {
                $('tbody').html(data.table_data);
                $('#total_records').text(data.total_data);
            }
        })
    }
    // 
    $(document).on('keyup', '#search', function(){
        var query = $(this).val();
        fetch_customer_data(query);
    });

    $('#users').on('click', '.remove-button', function(){
        var id=$(this).data('id');
        $("#exampleModal").modal("show");
        console.log(id);
    });
    $(document).on('click', '.remove-button', function(){
    var id = $(this).attr('id');
    {
        $.ajax({
            url:"{{route('live_search.destroy')}}",
            method:"get",
            data:{id:id},
            success:function(data)
            {
                alert(data);
                $('#users').DataTable().ajax.reload();
            }
        })
    }
}); 
});

1 Ответ

0 голосов
/ 26 октября 2018

попробуйте ниже логики,

<td><button type="button" class="remove-button btn btn-danger" data-action="{{route('nameofroute',$row->id)}}" >  </td>

Установить в форме, используя jQuery, например:

$(".remove-button ").click(function(){
    $("#formId").attr('action',$(this).attr('data-action')));
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...