私はLaravel認証を使って、名前、電子メール、パスワード、dobなどの資格情報を使って、自分のプロフィール画像をアップロードできるウェブサイトを作っています。ここLaravelの画像をアップロードする
protected function create(array $data)
{
return User::create([
'name' => $data['name'],
'email' => $data['email'],
'password' => bcrypt($data['password']),
'dob' => $data['dob'],
'profile_picture' => $data['profile_picture],
]);
}
と私のフォームがあります:
php artisan make:auth
を行った後、AuthController.php
でこの機能があります
<form class="form-horizontal" role="form" method="POST" action="{{ url('/register') }}" enctype="multipart/form-data">
{{ csrf_field() }}
<div class="form-group{{ $errors->has('email') ? ' has-error' : '' }}">
<label for="email" class="col-md-4 control-label">E-mail Address</label>
<input id="email" type="email" class="form-control" name="email" value="{{ old('email') }}">
@if ($errors->has('email'))
<span class="help-block">
<strong>{{ $errors->first('email') }}</strong>
</span>
@endif
</div>
<div class="form-group{{ $errors->has('password') ? ' has-error' : '' }}">
<label for="password" class="col-md-4 control-label">Password</label>
<input id="password" type="password" class="form-control" name="password">
@if ($errors->has('password'))
<span class="help-block">
<strong>{{ $errors->first('password') }}</strong>
</span>
@endif
</div>
<div class="form-group{{ $errors->has('password_confirmation') ? ' has-error' : '' }}">
<label for="password-confirm" class="col-md-4 control-label">Confirm Password</label>
<input id="password-confirm" type="password" class="form-control" name="password_confirmation">
@if ($errors->has('password_confirmation'))
<span class="help-block">
<strong>{{ $errors->first('password_confirmation') }}</strong>
</span>
@endif
</div>
<div class="form-group{{ $errors->has('name') ? ' has-error' : '' }}">
<label for="name" class="col-md-4 control-label">Fullname</label>
<input id="name" type="text" class="form-control" name="name" value="{{ old('name') }}">
@if ($errors->has('name'))
<span class="help-block">
<strong>{{ $errors->first('name') }}</strong>
</span>
@endif
</div>
<div class="form-group{{ $errors->has('dob') ? ' has-error' : '' }}">
<label for="name" class="col-md-4 control-label">Date of Birth</label>
<input id="dateOfBirth" type="date" class="form-control" name="dob">
@if ($errors->has('dob'))
<span class="help-block">
<strong>{{ $errors->first('dob') }}</strong>
</span>
@endif
</div>
<div class="form-group{{ $errors->has('profile_picture') ? ' has-error' : '' }}">
<label for="name" class="col-md-4 control-label">Profile Picture</label>
<input id="profilePicture" type="file" class="form-control" name="profile_picture">
@if ($errors->has('profile_picture'))
<span class="help-block">
<strong>{{ $errors->first('profile_picture') }}</strong>
</span>
@endif
</div>
<div class="form-group">
<button type="submit" class="btn btn-primary">
<i class="fa fa-btn fa-user"></i> Register
</button>
</div>
</form>
私はその拡張子の付いた画像のファイル名を保存したいと思います。しかし、どうすればいいのですか? ファイル名を文字列で取得する方法、画像ファイルをパブリックフォルダに移動してXAMPPデータベースに保存する方法はありますか?あなただけの名前を保存し、profile_imagesフォルダ内のパブリックディレクトリにアップロードしたい場合は
protected function create
に、このような何かを行うことができます。現実にはあなたはイメージをDBに保存していません!あなたはあなたのサーバー上のそのイメージへの "文字列"パスだけを保存しています! – lewis4u@ lewis4uはい!それはまさに私が欲しいものです!文字列はファイル名だけです。 –