【问题标题】:How to insert values to table 'users' in laravel 5.2?如何在 laravel 5.2 中向表“用户”插入值?
【发布时间】:2016-11-10 00:24:46
【问题描述】:

我想在“用户”表中插入员工详细信息用户名、区域。

我有 CreateEmployeeController 和以下代码

createemployee.blade.php 查看文件。

当我点击菜单 Create Employee is 时会显示以下错误

Connection.php 第 662 行中的 QueryException: SQLSTATE[42000]:语法错误或访问冲突:1066 表/别名:'users' 非唯一(SQL:select * from users inner join users on users.id = users.@987654326 @ 其中users.deleted_at 为空)

控制器文件:

<?php

namespace App\Http\Controllers\Admin;

use Illuminate\Http\Request;

use App\Http\Requests;
use App\Http\Controllers\Controller;
use App\Http\Controllers\AdminController;
use App\CreateEmployee;
use App\Employee;
use App\Users;




class CreateEmployeeController extends AdminController
{
    /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function index()
    {
        //
    }

 public function addemployee()
    {

        $employee = CreateEmployee::all();

$employee =CreateEmployee::join('users','users.id','=','users.users_id')->get();

        return view('app.admin.employee.employee',compact('employee','users'));
    }


    public function employeesave(Request $request)
    {

        $title = 'Add Employee';  

        $employee = new Employee();
        $employee->name=$request->employee_name;
        $employee ->area = $request->area;
        $employee->save();
        Session::flash('flash_notification', array('level' => 'success', 'message' => 'employee created successfully'));
        return Redirect::action('Admin\CreateEmployeeController@addemployee');

        }


    public function updateemployee(Request $request)
    {
        Employee::where('id',$request->id)->update(array('name'=>$request->employee_name,'area'=>$request->area));

        Session::flash('flash_notification', array('level' => 'success', 'message' => 'shop details updated successfully'));
        return Redirect::action('Admin\CreateEmployeeController@addemployee',array('id' => $request->id));
    }

 public function editemployee($id)
    {
        $employee = Employee::where('id',$id)->get();


       return view('app.admin.employee.editemployee',compact('employee'));
   }
       public function deleteemployee($id)
    {

        $employee =  Employee::where('id',$id)->get();

        return view('app.admin.employee.delete',compact('employee'));
    }


    public function deleteconfirms($id)
    {



         $employee = Employee::where('id',$id)->delete();






         Session::flash('flash_notification', array('level' => 'success', 'message' => 'customer deleted successfully'));
         return Redirect::action('Admin\CreateEmployeeController@addemployee');



    }

    public function destroy($id)
    {
        //
    }
}
//view file
@extends('app.admin.layouts.default')


{{-- Web site Title --}}
@section('title') {{{ trans('site/user.register') }}} :: @parent @stop

@section ('styles')
@parent 
<style type="text/css">
</style>
 @stop

{{-- Content --}}
@section('main')
@include('utils.vendor.flash.message')
    <div class="row">
        <div class="page-header">
            <h2>Add Employee</h2>
        </div>
    </div>

    <div class="container-fluid">
        <div class="row">


                        @include('utils.errors.list')


                        <form class="form-horizontal" role="form" method="POST" action="{{ URL::to('admin/addemployee') }}">
                            <input type="hidden" name="_token" value="{{ csrf_token() }}">




                                <div class="col-sm-12">
                             <div class="form-group">
                                <label class="col-md-2 control-label">Employee Name</label>

                                <div class="col-md-2">
                                    <input type="text" class="form-control" name="employee_name"
                                          required>
                                </div>
                            </div>
                            </div>


                               <div class="col-sm-12">

                                 <div class="form-group">


                                            <label class="col-md-2 control-label" for="religion">Password</label>

                                            <div class="col-md-2"> 

                                                <input type="password" class="form-control"   placeholder="Password"  name="password" id="password" data-parsley-trigger="change"  data-parsley-required="true" data-parsley-minlength="6" data-parsley-maxlength="14" required> 


                            {!! $errors->first('cpassword', '<label class="control-label" for="cpassword">:message</label>')!!}



                                            </div>

                                        </div>

                             </div>

                             </div> 



                             <div class="row">

                                 <div class="col-sm-12">

                                     <div class="form-group">

                                            <label class="col-md-2 control-label" for="caste">Confirm Password</label>

                                            <div class="col-md-2"> 

                                                 <input type="password" class="form-control" placeholder="Confirm Password" name="password_confirmation" id="password_confirmation"  data-parsley-trigger="change"  data-parsley-required="true"  data-parsley-equalto="#password" data-parsley-minlength="6" data-parsley-maxlength="14" required>

                             {!! $errors->first('password_confirmation', '<label class="control-label" for="password_confirmation">:message</label>')!!}

                                            </div>

                                        </div>

                                 </div>

                             </div>                           

                             <div class="row">

                                 <div class="col-sm-12">


                                 <div class="form-group">
                                <label class="col-md-2 control-label">Area</label>

                                <div class="col-md-2">
                                    <input type="text" class="form-control" name="area"
                                          required  placeholder="Area">
                                </div>
                            </div>
                            </div>
                            </div>



                            <div class="form-group">
                                <div class="col-md-2 col-md-offset-2">
                                    <button type="submit" class="btn btn-primary">
                                        Add
                                    </button>
                                </div>
                            </div>

                        </form>
                        </div>
                        </div>

            <div class="invoice-content">

             <div class="table-responsive">

           <div class="col-md-offset-2">

            <table class="table table-invoice">

                <thead>

                    <tr>

                       <th>Employee Name</th>
                       <th>Area</th>  


                    </tr>

                </thead>

                </div>
                </div>

                <tbody>




                    @foreach($addemployee as $employee)

                    <tr>
                        <td>{{$employee->employee_name}}</td>
                        <td>{{$employee->area}}</td> 

                        <td>
                        <a href="employee/edit/{{$employee->id}}">Edit</a>
                        <a onclick="return confirm('Are you Sure you want to do this Action!'); style.backgroundColor='#84DFC1'; "  href="employee/delete/{{$employee->id}}">delete</a>

                        </td>
                   </tr>

                    @endforeach  

                    @if(!count($employee))

                    <tr><td>NO data found </td></tr>



                    @endif



                </tbody>




                </tbody>



            </table>
                    {{--</div>--}}
                {{--</div>--}}
            {{--</div>--}}
        </div>
    </div>
@endsection

【问题讨论】:

    标签: laravel-5.2


    【解决方案1】:

    我无法全面了解您的问题,但据我所知,您在 join 语句中使用相同的表/列名称,您可以这样做:

    $employee = CreateEmployee::join('users', 'create_employees.id','=', 'users.employee_id')->get();
    

    希望这会有所帮助!

    【讨论】:

      猜你喜欢
      • 2017-04-18
      • 2017-02-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-05
      • 2017-06-11
      相关资源
      最近更新 更多