Laravel 5.5 - 无法从 sql server 2008R2 获取 Set/Get 数据(总是 return 500)
Laravel 5.5 - Cant Set/Get data from sqlserver 2008R2 (always return 500)
我的 laravel 和 sqlserver 有问题。最近 php pod 没有问题,因为我在我的 yii2 项目中使用了这个 sqlserver,它运行良好。
try {
DB::connection()->getPdo();
if(DB::connection()->getDatabaseName()){
echo "Yes! Successfully connected to the DB: " . DB::connection()->getDatabaseName();
}
} catch (\Exception $e) {
die("Could not connect to the database. Please check your configuration.");
}
我也试过数据库连接,它返回 "Yes! Successfully connected to the DB: MyDB"。
这是我的控制器
public function postsignup(Request $request){
$this->validate($request, [
'username' =>'required',
'email' =>'required',
'password' =>'required',
]);
try{
$users = new User;
$users->id = '15';
$users->username = $request->input('username');
$users->password_hash = bcrypt($request->input('password'));
$users->email = $request->input('email');
$users->save();
return redirect('/')->with('response','register success');
}
catch(\PDOException $e){
echo $e->getMessage();
}
}
我的模型
public $timestamps = false;
protected $fillable = [
'username', 'email', 'password_hash',
];
protected $hidden = [
'password', 'remember_token',
];
这是我的看法
@extends('layouts.app')
@section('content')
<div class="container">
<div class="row">
@if(session('response'))
<div class="col-md-8 alert alert-success">
{{session('success')}}
</div>
@endif
<div class="col-md-8 col-md-offset-2">
<div class="panel panel-default">
<div class="panel-heading">Register</div>
<div class="panel-body">
<form class="form-horizontal" method="post" action="{{route('account-create-post')}}">
{{ csrf_field() }}
<div class="form-group{{ $errors->has('name') ? ' has-error' : '' }}">
<label for="name" class="col-md-4 control-label">Name</label>
<div class="col-md-6">
<input id="name" type="text" class="form-control" name="username"
value="{{ old('name') }}" required autofocus>
@if ($errors->has('name'))
<span class="help-block">
<strong>{{ $errors->first('name') }}</strong>
</span>
@endif
</div>
</div>
<div class="form-group{{ $errors->has('email') ? ' has-error' : '' }}">
<label for="email" class="col-md-4 control-label">E-Mail Address</label>
<div class="col-md-6">
<input id="email" type="email" class="form-control" name="email"
value="{{ old('email') }}" required>
@if ($errors->has('email'))
<span class="help-block">
<strong>{{ $errors->first('email') }}</strong>
</span>
@endif
</div>
</div>
<div class="form-group{{ $errors->has('password') ? ' has-error' : '' }}">
<label for="password" class="col-md-4 control-label">Password</label>
<div class="col-md-6">
<input id="password" type="password" class="form-control" name="password" required>
@if ($errors->has('password'))
<span class="help-block">
<strong>{{ $errors->first('password') }}</strong>
</span>
@endif
</div>
</div>
<div class="form-group">
<label for="password-confirm" class="col-md-4 control-label">Confirm Password</label>
<div class="col-md-6">
<input id="password-confirm" type="password" class="form-control"
name="password_confirmation" required>
</div>
</div>
<div class="form-group">
<div class="col-md-6 col-md-offset-4">
<button type="submit" class="btn btn-primary">
Register
</button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
@endsection
我的路线
Route::post('/signup', array(
'as' => 'account-create-post',
'uses' => 'UserController@postsignup'
));
Route::get('/signup', array(
'as' => 'account-create',
'uses' => 'UserController@getsignup'
));
此代码用于我的注册。首先,用户填写注册输入字段,然后点击注册按钮将他们的数据保存到数据库,但我知道我与数据库的连接有问题,因为如果我评论 $users->save()[ 则不会出现此 500 错误=37=]。我还尝试使用 $users = User::all(); 从数据库中检索数据,并出现此 500 错误。
我希望有人遇到过这个错误并帮助我解决这个错误,这样我就可以继续我的工作。仅供参考,我已经到处调试所以我想我的代码没问题。
3天后终于知道为什么要出这个500了。我最近尝试使用错误处理检查数据库连接,它返回了成功消息,但是当我尝试从数据库迁移模式时,我的 cmd 停止响应,我意识到 config/database.[=19 中的数据库配置有问题=]
'sqlsrv' => [
'driver' => 'sqlsrv',
'host' => 'my_IP',
'port' => 'my_Port',
'database' => 'DbName',
'username' => 'Db_Username',
'password' => 'Db_Password',
'charset' => 'utf8',
'prefix' => 'pos.',
],
问题很简单-_-,前缀包含“.”。我将其删除,一切正常。嗯,尴尬的时刻,感谢@madalinivascu 的快速回复 +1
我的 laravel 和 sqlserver 有问题。最近 php pod 没有问题,因为我在我的 yii2 项目中使用了这个 sqlserver,它运行良好。
try {
DB::connection()->getPdo();
if(DB::connection()->getDatabaseName()){
echo "Yes! Successfully connected to the DB: " . DB::connection()->getDatabaseName();
}
} catch (\Exception $e) {
die("Could not connect to the database. Please check your configuration.");
}
我也试过数据库连接,它返回 "Yes! Successfully connected to the DB: MyDB"。
这是我的控制器
public function postsignup(Request $request){
$this->validate($request, [
'username' =>'required',
'email' =>'required',
'password' =>'required',
]);
try{
$users = new User;
$users->id = '15';
$users->username = $request->input('username');
$users->password_hash = bcrypt($request->input('password'));
$users->email = $request->input('email');
$users->save();
return redirect('/')->with('response','register success');
}
catch(\PDOException $e){
echo $e->getMessage();
}
}
我的模型
public $timestamps = false;
protected $fillable = [
'username', 'email', 'password_hash',
];
protected $hidden = [
'password', 'remember_token',
];
这是我的看法
@extends('layouts.app')
@section('content')
<div class="container">
<div class="row">
@if(session('response'))
<div class="col-md-8 alert alert-success">
{{session('success')}}
</div>
@endif
<div class="col-md-8 col-md-offset-2">
<div class="panel panel-default">
<div class="panel-heading">Register</div>
<div class="panel-body">
<form class="form-horizontal" method="post" action="{{route('account-create-post')}}">
{{ csrf_field() }}
<div class="form-group{{ $errors->has('name') ? ' has-error' : '' }}">
<label for="name" class="col-md-4 control-label">Name</label>
<div class="col-md-6">
<input id="name" type="text" class="form-control" name="username"
value="{{ old('name') }}" required autofocus>
@if ($errors->has('name'))
<span class="help-block">
<strong>{{ $errors->first('name') }}</strong>
</span>
@endif
</div>
</div>
<div class="form-group{{ $errors->has('email') ? ' has-error' : '' }}">
<label for="email" class="col-md-4 control-label">E-Mail Address</label>
<div class="col-md-6">
<input id="email" type="email" class="form-control" name="email"
value="{{ old('email') }}" required>
@if ($errors->has('email'))
<span class="help-block">
<strong>{{ $errors->first('email') }}</strong>
</span>
@endif
</div>
</div>
<div class="form-group{{ $errors->has('password') ? ' has-error' : '' }}">
<label for="password" class="col-md-4 control-label">Password</label>
<div class="col-md-6">
<input id="password" type="password" class="form-control" name="password" required>
@if ($errors->has('password'))
<span class="help-block">
<strong>{{ $errors->first('password') }}</strong>
</span>
@endif
</div>
</div>
<div class="form-group">
<label for="password-confirm" class="col-md-4 control-label">Confirm Password</label>
<div class="col-md-6">
<input id="password-confirm" type="password" class="form-control"
name="password_confirmation" required>
</div>
</div>
<div class="form-group">
<div class="col-md-6 col-md-offset-4">
<button type="submit" class="btn btn-primary">
Register
</button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
@endsection
我的路线
Route::post('/signup', array(
'as' => 'account-create-post',
'uses' => 'UserController@postsignup'
));
Route::get('/signup', array(
'as' => 'account-create',
'uses' => 'UserController@getsignup'
));
此代码用于我的注册。首先,用户填写注册输入字段,然后点击注册按钮将他们的数据保存到数据库,但我知道我与数据库的连接有问题,因为如果我评论 $users->save()[ 则不会出现此 500 错误=37=]。我还尝试使用 $users = User::all(); 从数据库中检索数据,并出现此 500 错误。 我希望有人遇到过这个错误并帮助我解决这个错误,这样我就可以继续我的工作。仅供参考,我已经到处调试所以我想我的代码没问题。
3天后终于知道为什么要出这个500了。我最近尝试使用错误处理检查数据库连接,它返回了成功消息,但是当我尝试从数据库迁移模式时,我的 cmd 停止响应,我意识到 config/database.[=19 中的数据库配置有问题=]
'sqlsrv' => [
'driver' => 'sqlsrv',
'host' => 'my_IP',
'port' => 'my_Port',
'database' => 'DbName',
'username' => 'Db_Username',
'password' => 'Db_Password',
'charset' => 'utf8',
'prefix' => 'pos.',
],
问题很简单-_-,前缀包含“.”。我将其删除,一切正常。嗯,尴尬的时刻,感谢@madalinivascu 的快速回复 +1