Reputation: 33
im trying to save data to the database but im getting an error Creating default object from empty value
namespace App\Http\Controllers;
use Illuminate\Http\Request; use App\Message;
class MessageController extends Controller
{
public function submit(Request $request)
{
$this->validate($request, [ 'name' => 'required', 'email' => 'required']);
//create a new message
$messge= new Message;
$message->name=$request->name;
$message->email = $request->email;
$message->message = $request->message;
//message save
$message -> save();
return redirect('/');
}
}
Upvotes: 2
Views: 126
Reputation: 12277
WHat you are experiencing is "typo". You are initializing the model with variable $messge
and then you are accessing it using a different name $message
. Correct code:
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Message;
class MessageController extends Controller
{
public function submit(Request $request)
{
$this->validate(
$request,
[
'name' => 'required',
'email' => 'required'
]
);
//create a new message
$message= new Message;
$message->name=$request->name;
$message->email = $request->email;
$message->message = $request->message;
//message save
$message->save();
return redirect('/');
}
}
Upvotes: 1