2016-11-06 8 views
0

Kann nicht in die Datenbank eines Laravel-Controllers eingefügt werden. Unten ist der Controller. Ich halte an der folgenden Zeile einen Fehler Highlight in Dreamweaver erhalten:Laravel DB Einfügefehler 500

$users = DB::table('records')->insert([ 
    'product' => '[email protected]', 
    'name' => '[email protected]', 
    'email' => '[email protected]' 
]); 

Ich erhalte Fehler 500

namespace App\Http\Controllers; 

use Illuminate\Http\Request; 
use Illuminate\Support\Facades\View; 
use Illuminate\Support\Facades\DB; 

class create extends Controller 
{ 
    // 
    public function createRecord(Request $request){ 
     json_decode($request->getContent(), true); 

     //return $request; 
     //$something ='asdf'; 
     //return $something; 

     $users = DB::table('records')->insert([ 
      'product' => '[email protected]', 
      'name' => '[email protected]', 
      'email' => '[email protected]' 
     ]); 
    } 
} 
+0

können Sie uns zeigen die Screenshot der vollständigen Fehlermeldung? – Ronald

Antwort

1

ich wirklich nichts falsch mit diesem sehen. Haben Sie sichergestellt, dass der Datentyp in der Datenbank mit dem übereinstimmt, was Sie einfügen? Es ist schwer, dies wirklich zu erfassen, wenn Sie den Fehler 500, den Sie erhalten, nicht angegeben haben.

folgend statt Versuchen:

  1. Ihr Modell erstellen. php artisan make:model Record

  2. Instanziieren Sie eine neue Instanz dieses Modells. $record = new \App\Record;

  3. Fügen Sie Ihre Daten mit dem Eloquent ORM hinzu.

    $record->product = "[email protected]"; 
    $record->name = "[email protected]"; 
    $record->email = "[email protected]"; 
    
  4. Schließlich speichern: $record->save();

in voller Also, das wie folgt aussehen würde:

$record = new \App\Record; 
$record->product = "[email protected]"; 
$record->name = "[email protected]"; 
$record->email = "[email protected]"; 
$record->save(); 

Sehen, ob das für Sie arbeitet.