我正在尝试向我的注册用户发送激活链接。
这是我的postRegister()
功能
public function postRegister(){
$validator = Validator::make( Input::all(), array(
'name' => 'required|min:2|max:20',
'email' =>'required|max:50|email|unique:users',
'username' =>'required|max:20|min:3|unique:users',
));
if ($validator->fails()) {
return Redirect::to('/')
->with('error_register','Something Wrong')
->withErrors($validator)
->withInput();
}
$user = new User;
$user->name = Input::get('name');
$user->username = Input::get('username');
$user->email = Input::get('email');
$user->code = str_random(60);
$user->password = '';
$user->active = 0;
$user->type = 'Aveniros';
$user->save();
// Email
Mail::send('emails.activation', array(
'username'=>$user->username,
'name'=>$user->name,
'code'=>$user->code,
'email'=>$user->email
),
function($message){
$message->from(env('MAIL_USERNAME'),'Aveniros Site');
$message->to( $user->email, $user->name )->subject(' Aveniros Site Activation ');
});
return Redirect::to('/')
->with('success',' Your Account has been created ! <small> Email has been sent to set-password, and activation.</small>');
}
}
$message->to( $user->email, $user->name )->subject(' Aveniros Site Activation ');
未定义的变量:用户
如何使用/调用我的$user
变量?
我认为我们可以在$user->save();
之后访问它们 - 对吗?
但显然,我不能。如果我错了,请纠正我。
答案 0 :(得分:0)
我想出了自己的答案,我才意识到我需要添加use ($user)
进入此行function($message) use ($user){
// Email
Mail::send('emails.activation', array(
'username'=>$user->username,
'name'=>$user->name,
'code'=>$user->code,
'email'=>$user->email
),
function($message) use ($user){
$message->from(env('MAIL_USERNAME'),'Aveniros Site');
$message->to( $user->email, $user->name )->subject(' Aveniros Site Activation ');
});