小编jer*_*auf的帖子

使用数据库填充下拉菜单会导致Laravel 4

我正在尝试使用Laravel 4中的数据库结果填充下拉菜单.我对Laravel非常新.这实际上是我的第一个网站,我正在学习.所以,请告诉我,如果我使用了错误的术语或没有足够的信息.

我有一个公司信息数据库,我需要用户能够从下拉列表中选择一家公司.或者如果公司不在数据库中添加它.

对于选择菜单,它需要像这样:

[公司名称结果]

我在我的控制器中使用此代码:

$companies = RecordCompany::get();
$company_selector = array();

foreach($companies as $company) {
   $company_selector[$company->id] = $company->id;
   $company_selector[$company->company_name] = $company->company_name;
}

return View::make('admin.record_new', array('company_selector' => $company_selector));
Run Code Online (Sandbox Code Playgroud)

这就是我的看法:

@if(count($client_selector)>0)
   {{ Form::select('company_id', $company_selector, array_values($company_selector)[0]) }}
@endif 
Run Code Online (Sandbox Code Playgroud)

免责声明:我在网上找到了这个代码.

首先,我不明白它将如何填充值和选项文本而不告诉它在何处放置数据.

其次,回来的错误是出乎意料的.当我拿出[0]表单代码时,它告诉我那$company_selectorundefined.

我在这做错了什么?

php mysql forms drop-down-menu laravel-4

8
推荐指数
1
解决办法
9162
查看次数

密码重置电子邮件获取530 5.7.1需要验证

当我尝试发送密码重置电子邮件时,我收到以下错误:

Swift_TransportException in AbstractSmtpTransport.php line 383:
Expected response code 250 but got code "530", with message "530 5.7.1 Authentication required"
Run Code Online (Sandbox Code Playgroud)

我不确定这里有什么问题.我看过Stack Overflow和Laracasts并发现了类似的问题.我尝试了两种不同的电子邮件地址和服务器.但是我得到了同样的错误.

这是我的.env文件:

MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=xx@gmail.com
MAIL_PASSWORD=[password]
MAIL_ENCRYPTION=tls
Run Code Online (Sandbox Code Playgroud)

这是我的mail.php文件:

'driver' => env('MAIL_DRIVER'),
'host' => env('MAIL_HOST'),
'port' => env('MAIL_PORT'),
'from' => [
   'address' => 'xx@gmail.com',
   'name' => 'XX',
],
'encryption' => env('MAIL_ENCRYPTION'),
'username' => env('MAIL_USERNAME'),
'password' => env('MAIL_PASSWORD'),
'sendmail' => '/usr/sbin/sendmail -bs',
Run Code Online (Sandbox Code Playgroud)

我有什么想法在这里错了吗?

laravel laravel-5.3

5
推荐指数
1
解决办法
9601
查看次数

Laravel Socialite with Facebook 未登录

我正在完全按照文档进行操作。

https://github.com/laravel/socialitehttps://laravel.com/docs/5.1/authentication#social-authentication

我已经在 Facebook 上创建了我的应用程序并且一切正常。当我使用 Facebook 按钮单击登录时,它会授权该应用程序并将我带回我的网站。但是,它不会显示我已登录。如果我使用 dd() 而不是下面的重定向,我会从我的 Facebook 帐户中获取所有数据。但是只有登录用户才能看到的页面是不可见的。

这是我的控制器:

public function redirectToProvider()
{
    return Socialite::driver('facebook')->redirect();
}

public function handleProviderCallback()
{
    $user = Socialite::driver('facebook')->user();

    return redirect('my-profile')
            ->with('message', 'You have signed in with Facebook.');
}
Run Code Online (Sandbox Code Playgroud)

以下是我的路线:

Route::get('login/facebook', 'Auth\AuthController@redirectToProvider');
Route::get('login/facebook/callback', 'Auth\AuthController@handleProviderCallback');
Run Code Online (Sandbox Code Playgroud)

Socialite 已正确安装在 composer.json 中。这些类在 config/app.php 中,我的 FB 应用程序的 ID 在 config/services.php 中。

关于为什么它不起作用的任何想法?

facebook laravel laravel-socialite

2
推荐指数
1
解决办法
2238
查看次数