Php 如何在Laravel中创建用户帐户设置?
我对Laravel&php是新手。我已在我的laravel应用程序中成功创建身份验证。现在用户可以注册并登录到他们的帐户。现在,我想在我的导航栏中创建一个帐户设置选项,该选项将用户重定向到一个页面,用户可以在该页面上更改自己的姓名、电子邮件和密码。谁能帮我解决一下我将如何实施这一点 这是数据库中的“我的用户”表Php 如何在Laravel中创建用户帐户设置?,php,laravel,authentication,settings,Php,Laravel,Authentication,Settings,我对Laravel&php是新手。我已在我的laravel应用程序中成功创建身份验证。现在用户可以注册并登录到他们的帐户。现在,我想在我的导航栏中创建一个帐户设置选项,该选项将用户重定向到一个页面,用户可以在该页面上更改自己的姓名、电子邮件和密码。谁能帮我解决一下我将如何实施这一点 这是数据库中的“我的用户”表 <?php use Illuminate\Support\Facades\Schema; use Illuminate\Database\Schema\Blueprint; us
<?php
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class CreateUsersTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('users', function (Blueprint $table) {
$table->increments('id');
$table->string('name');
$table->string('email')->unique();
$table->string('password');
$table->string('provider')->nullable();
$table->string('provider_id')->nullable();
$table->string('google_id')->nullable();
$table->rememberToken()->nullable();
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('users');
}
}
您必须像这样实现用户配置文件控制器
例如:
class UsersController extends Controller
{
//
public function getList($message = null){
$users = User::All();
return view("users.list",Array("users"=>$users,"message"=>$message));
}
public function editUser($id){
$user = User::findOrFail($id);
return view("users.edit", Array("user"=>$user));
}
public function updateUser($id, Request $request){
$user = User::findOrFail($id);
if($request->input("name")!=null)$user->name = $request->input("name");
if($request->input("email")!=email)$user->email = $request->input("email");
$message = array("data"=>"User modified.","type"=>"success");
try{
$user->save();
}catch(\Illuminate\Database\QueryException $ex){
$message = array("data"=>"Exception trying modify the data ".$ex, "type"=>"danger");
}
return $this->getList($message);
}
public function changePassword($id){
$user = User::findOrFail($id);
return view("users.password", Array("user"=>$user));
}
public function updatePassword($id, Request $request){
if($request->input("password") != $request->input("password_confirm"))
return redirect()->back()->withInput()->with("message",Array("type"=>"danger","data"=>"Password fields does not match!"));
$user = User::findOrFail($id);
$user->password = bcrypt($request->input("password"));
$message = array("data"=>"Password changed.","type"=>"success");
try{
$user->save();
}catch(\Illuminate\Database\QueryException $ex){
$message = array("data"=>"Exception trying modify the data ".$ex, "type"=>"danger");
}
return $this->getList($message);
}
}
在web.php中为用户设置帐户定义路由,并为此路由添加中间件身份验证,然后在resources/views/layouts/app.blade.php中为用户帐户设置添加链接。制作一个单独的控制器,或者使用home controller并在该控制器中创建用于帐户设置的函数,现在在该函数中实现您的逻辑并执行您想执行的任何操作。但是我是php新手,所以我不知道我必须在代码中编写哪些函数。:(公共函数帐户设置(请求$Request){//在此处执行操作}是的,您必须编写代码