Laravel 5 系列入门教程(一)【最适合中国人的 Laravel 教程】

2015-3-7   /   字数:4733   /   阅读数:343923   /   分类: Laravel     

基于最新 Laravel 5.5 的 2017 版教程已经发布到 Github:https://github.com/johnlui/Learn-Laravel-5/issues

十分建议学习 5.5,跟 5.0 比变化非常大。


本教程示例代码见:https://github.com/johnlui/Learn-Laravel-5

大家在任何地方卡住,最快捷的解决方式就是去看我的示例代码。


Laravel 5 中文文档:

1. http://laravel-china.org/docs/5.0

2. http://www.golaravel.com/laravel/docs/5.0/


默认条件

本文默认你已经有配置完善的 PHP + MySQL 运行环境,懂得 PHP 网站运行的基础知识。跟随本教程走完一遍,你将会得到一个基础的包含登录的简单 blog 系统,并将学会如何使用一些强大的 Laravel 插件和 composer 包(Laravel 插件也是 composer 包)。

软件版本:PHP 5.4+,MySQL 5.1+

本文不推荐完全不懂 PHP 与 MVC 编程的人学习。本文不是 “一步一步跟我做” 教程。本文需要你付出一定的心智去解决一些或大或小的隐藏任务,以达到真正理解 Laravel 运行逻辑的目的。

1. 安装

许多人被拦在了学习Laravel的第一步,安装。并不是因为安装教程有多复杂,而是因为【众所周知的原因】。在此我推荐一个composer全量中国镜像:http://pkg.phpcomposer.com/ 。推荐以 “修改 composer 的配置文件” 方式配置。

镜像配置完成后,切换到你想要放置该网站的目录下(如 C:\wwwroot、/Library/WebServer/Documents/、/var/www/html、/etc/nginx/html 等),运行命令:

composer create-project laravel/laravel learnlaravel5 5.0.22

然后,稍等片刻,当前目录下就会出现一个叫 learnlaravel5 的文件夹。

本系列教程使用 Laravel 5.0 版本,5.1 版本去掉了本系列教程主要讲解的元素(Auth 系统),不建议使用 5.1 来学习。本系列教程为入门教程,目的是搞清楚 Laravel 的基本使用方法,切忌本末倒置。

然后将网站根目录配置为 learnlaravel5/public。

如果你不会配置,建议去学会配置,网上资料很多。如果自暴自弃,可以把 的第 29 行 'url' => 'http://localhost', 配置成你的子目录地址,注意,要一直配置到 */learnlaravel5/public。

使用浏览器访问你配置的地址,将看到以下画面(我在本地配置的地址为 http://fuck.io:88 ):

Image

2. 体验 Auth 系统并完成安装

—— 经过上面的过程,Laravel 5 的安装成功了?

—— 没有o(╯□╰)o

查看路由文件 learnlaravel5/app/Http/routes.php 的代码:

Route::get('/', 'WelcomeController@index');

Route::get('home', 'HomeController@index');

Route::controllers([
    'auth' => 'Auth\AuthController',
    'password' => 'Auth\PasswordController',
]);

跟随代码里的蛛丝马迹,让我们访问 http://fuck.io:88/home (请自行替换域名),结果竟然跳转到了登陆页?

Image

没错,Laravel 自带了开箱即用的 Auth 系统,连页面都已经写好了。

让我们随意输入邮箱和密码,点击登录,你很可能得到以下画面(Mac 或 Linux 下):

Image

为什么空白?用开发者工具查看,这个请求的状态码是 500,为什么?

因为 learnlaravel5/storage 目录没有 777 权限。

执行 shell 命令:

cd learnlaravel5

sudo chmod -R 777 storage

重新访问 http://fuck.io:88/home ,随意输入邮箱和密码,如果你得到以下画面:

Image

那么恭喜你~ Laravel 5 安装成功!

不想配置镜像的同学,可以使用 Laravel 界非常著名的 安正超 搞的安装神器:https://github.com/overtrue/latest-laravel

3. 数据库建立及迁移

Laravel 5 把数据库配置的地方改到了 learnlaravel5/.env,打开这个文件,编辑下面四项,修改为正确的信息:

DB_HOST=localhost

DB_DATABASE=laravel5

DB_USERNAME=root

DB_PASSWORD=password

推荐新建一个名为 laravel5 的数据库,为了学习方便,推荐使用 root 账户直接操作。

Laravel 已经为我们准备好了 Auth 部分的 migration,运行以下命令执行数据库迁移操作:

php artisan migrate

得到的结果如下:

Image

如果你运行命令报错,请检查数据库连接设置。

至此,数据库迁移已完成,你可以打开 http://fuck.io:88/home 欢快地尝试注册、登录啦。

4. 模型 Models

接下来我们将接触Laravel最为强大的部分,Eloquent ORM,真正提高生产力的地方,借用库克的一句话:鹅妹子英!

运行一下命令:

php artisan make:model Article

php artisan make:model Page

Laravel 4 时代,我们使用 Generator 插件来新建 Model。现在,Laravel 5 已经把 Generator 集成进了 Artisan。

现在,Artisan 帮我们在 learnlaravel5/app/ 下创建了两个文件 Article.phpPage.php,这是两个 Model 类,他们都继承了 Laravel Eloquent 提供的 Model 类 Illuminate\Database\Eloquent\Model,且都在 \App 命名空间下。这里需要强调一下,用命令行的方式创建文件,和自己手动创建文件没有任何区别,你也可以尝试自己创建这两个 Model 类。

Model 即为 MVC 中的 M,翻译为 模型,负责跟数据库交互。在 Eloquent 中,数据库中每一张表对应着一个 Model 类(当然也可以对应多个)。

如果你从其他框架转过来,可能对这里一笔带过的 Model 部分很不适应,没办法,是因为 Eloquent 实在太强大了啦,真的没什么好做的,继承一下 Eloquent 类就能实现很多很多功能了。

如果你想深入地了解 Eloquent,可以阅读系列文章:深入理解 Laravel Eloquent(一)——基本概念及用法


接下来进行 Article 和 Page 类对应的 articles 表和 pages表的数据库迁移,进入 learnlaravel5/database/migrations 文件夹。

*_create_articles_table.php 中修改:

Schema::create('articles', function(Blueprint $table)
{
    $table->increments('id');
    $table->string('title');
    $table->string('slug')->nullable();
    $table->text('body')->nullable();
    $table->string('image')->nullable();
    $table->integer('user_id');
    $table->timestamps();
});

*_create_pages_table.php 中修改:

Schema::create('pages', function(Blueprint $table)
{
    $table->increments('id');
    $table->string('title');
    $table->string('slug')->nullable();
    $table->text('body')->nullable();
    $table->integer('user_id');
    $table->timestamps();
});

然后执行命令:

php artisan migrate

成功以后, articles 表和 pages 表已经出现在了数据库里,去看看吧~

5. 数据库填充 Seeder

learnlaravel5/database/seeds/ 下新建 PageTableSeeder.php 文件,内容如下:

delete();

    for ($i=0; $i < 10; $i++) { Page::create([ 'title' => 'Title '.$i,
        'slug'    => 'first-page',
        'body'    => 'Body '.$i,
        'user_id' => 1,
      ]);
    }
  }

}

然后修改同一级目录下的 DatabaseSeeder.php中:

// $this->call('UserTableSeeder');

这一句为

$this->call('PageTableSeeder');

然后运行命令进行数据填充:

composer dump-autoload

php artisan db:seed

去看看 pages 表,是不是多了十行数据?


教程(一)代码快照:https://github.com/johnlui/Learn-Laravel-5/archive/tutorial_1.zip


下一步:Laravel 5 系列入门教程(二)【最适合中国人的 Laravel 教程】

WRITTEN BY

avatar

评论:

surest
2018-10-24 04:12
好赞
酱酱鱼
2018-02-02 18:08
有用么
Albert
2018-01-10 10:44
请问你这个博客系统是什么做的呢?是用laravel还是wordpress?
JohnLui
2018-01-10 11:00
@Albert:请看底部
lili
2017-08-22 17:15
[Illuminate\Database\QueryException]
  SQLSTATE[42S01]: Base table or view already exists: 1050 La table 'users' existe d茅j脿 (SQL

  : create table `users` (`id` int unsigned not null auto_increment primary key, `name` varc
  har(255) not null, `email` varchar(255) not null, `password` varchar(255) not null, `remem
  ber_token` varchar(100) null, `created_at` timestamp null, `updated_at` timestamp null) de
  fault character set utf8mb4 collate utf8mb4_unicode_ci)

  [PDOException]
  SQLSTATE[42S01]: Base table or view already exists: 1050 La table 'users' existe

执行php artisan grate 报了上面的错误,如何避免呢
哲哲别
2017-04-01 17:01
[Symfony\Component\Debug\Exception\FatalErrorException]
  Cannot declare class CreateUsersTable, because the name is already in use


这个是咋回事呢?我已经清空数据库了,说我那个名字已经在使用了,咋解决/我的事wamp64位,php7.0.1版本,laraval是5.2.15刚入手的,之前用过一下thinkphp。请大家指教一下。
柚子
2017-04-16 15:22
@哲哲别:这个数据叫迁移自己会创建附属的数据库,你没有清干净,你这个截图,有点抽象,谁看了,我想一直半会也想不起来
哲哲别
2017-04-01 16:21
我的直接弄的5.2版本,很多有些不一样呀,不知道怎么创建数据表。。。创建模型之后,没有出现在 ***_create_articles_table.php这些。不知道怎么搞了,版本之间变化好大呀!
zhouciming
2017-03-30 00:59
按你的教程,我一切都是成功的。唯一不解的是:插入的记录中,create_at填充的时间总是比实际的时间小8个小时,中国在东8区,所以这个8与时区设置有关。但是我的php.ini中已经设置了timezone = PRC了,那么为什么还会出现这个问题呢,请指教!!!
哲哲别
2017-04-01 16:17
@zhouciming:这个时区要自己重新配置,在D:\wamp64\www\laravel-v5.2.15\config\app.php,这里需要配置一下    'timezone' => 'PRC',就可以了
zhouciming
2017-04-01 16:43
@哲哲别:非常感谢,已经找到这个位置了!
幸运儿
2017-03-17 18:01
你好,怎么做到登录之后跳转到登录前的页面呢?谢谢
柚子
2017-04-16 15:24
@幸运儿:重定向
幸运儿
2017-04-17 18:22
@柚子:我的意思是,你登录之前的页面是不确定的。但是你登录之后要跳转到登录前的页面。你重定向的url写死吗?我是想问怎么把它写活
Alen
2017-10-16 20:00
@幸运儿:你可以这样 redirect()->back()
拾荒少年
2017-02-26 18:39
博主威武!!!
王永东
2017-01-12 10:23
看过你的教程之后,感觉很清晰,条理性很强,赞。
gaga
2016-12-28 22:39
不错,赞一个
snail
2016-09-07 14:46
博主好脏~~~域名亮瞎了。艹
q
2016-08-19 13:41
93年的小伙伴这么强~

2016-07-15 18:25
Uncaught TypeError: Argument 1 passed to App\Exceptions\Handler::report() must be an instance of Exception, instance of Error given, called in /home/dong/www/laravel/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php on line 73 and defined in /home/dong/www/laravel/app/Exceptions/Handler.php:25
Stack trace:
#0 /home/dong/www/laravel/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(73): App\Exceptions\Handler->report(Object(Error))
#1 [internal function]: Illuminate\Foundation\Bootstrap\HandleExceptions->handleException(Object(Error))
#2 {main}
thrown

大神这是什么意思?
Ebychu
2016-06-23 15:35
讲的好棒奥,不过生成测试数据,用faker组件会不会更方便一些呢
rolla
2016-05-11 16:04
很棒的教程,简直玩得停不下来
YAJUN813
2016-05-07 15:37
感谢分享!
Laravel 很不错,这几天一直在学习。
xhq
2016-04-29 23:09
rewrite规则,简单方便,http://wp.iyouths.org/292.html
laravel新手
2016-04-24 10:23

请问下 访问不存在的路由 laravel下如何接管啊!!
比如 我定义的路由的路由是test 然后访问一个不存在的路由地址比如new
这个时间如何接管这个new路由

thinkphp 有empty接管
YiHong
2016-04-14 11:58
老师,在实际开发中,每次修改表结构都会在database/migrationgs目录下生产一个.php文件,假如是一个大型的项目,那得生产100多个.php文件。您怎么解决这种问题?
justId
2016-09-22 17:51
@YiHong:这个简单啊,其实真正作用的是方法里的函数,建表的话也可以按照模块来分migrate文件,数据填充也是这个思路
jokee
2016-04-05 10:51
call函数默认会把类里所有的func调用一遍吗?
多谢
jokee
2016-04-05 16:44
@jokee:找了原代码,原来是这样的
    public function call($class)
    {
        $this->resolve($class)->run();

        if (isset($this->command)) {
            $this->command->getOutput()->writeln("<info>Seeded:</info> $class");
        }
    }

BTW,多谢lz的教程
楠楠猪
2016-04-02 21:41
老师你好,我也想把自己的主页变成你的http://fuck.io:88/home,而不是http://localhost/test1/learnlaravel5/public/home,我该怎么做啊,谢谢啦!
1
2016-04-11 17:57
@楠楠猪:虚拟主机里面配置一下
henry
2016-03-29 14:33
感谢分享!学到了很多,都按楼主的步骤实现了
崇拜大神
2016-03-24 11:06
好崇拜大神啊
几只少年
2016-02-25 21:06
已收藏楼主博客,88年的吧~
JohnLui
2016-02-25 21:17
@几只少年:93。。。
jinhaoxu
2016-03-18 21:37
@JohnLui:老师你好,我想请问一下:
1.laravel5.0是不是自带记住登录状态,为什么我没勾选记住我,我重启浏览器后它还是记住我了??
2.laravel5.0是不是得自己写限制用户登录错误次数的方法?它原来的ThrottlesLogins在laravel5.0里面好像用不了......
老师如果您有空的话就回复一下我,或者发邮箱给我,指点一下我这只迷途的“小羔羊”:)

2016-09-13 01:30
@jinhaoxu:学习了
赵明亮
2016-02-15 11:26
学习了
Cindy
2016-02-08 21:47
你好,我一直無法連到home目錄,它一直出現Error 404,請問是什麼原因呢?
Happybird
2016-02-22 18:39
@Cindy:今天我也出这个问题了,后来发现把apache conf里
LoadModule rewrite_module modules/mod_rewrite.so前面的# 去掉就行了
Ryuuri
2016-03-11 11:32
@Happybird:成功了。
非常感谢。
mili
2016-01-26 23:46
老师你好现在 我按照你的教程开始做 没有下载下来 没有HOME 的控制器 和页面了希望您能更新教程 虽然这个有基础的人来说 不算啥
php新手上路
2016-01-25 01:31
老师 您好伟大
T厌氧De鱼
2016-01-12 13:12
运行sudo php artisan migrate时
**************************************
*     Application In Production!     *
**************************************
Do you really wish to run this command? [y/N] y
                                                  
  [Illuminate\Database\QueryException]                                                            
  SQLSTATE[42000]: Syntax error or access violation: 1067 Invalid default value for 'created_at'  
  (SQL: create table `users` (`id` int unsigned not null auto_increment primary key, `name` varch  
  ar(255) not null, `email` varchar(255) not null, `password` varchar(60) not null, `remember_tok  
  en` varchar(100) null, `created_at` timestamp default 0 not null, `updated_at` timestamp defaul  
  t 0 not null) default character set utf8 collate utf8_unicode_ci)                                
                                                                                                  
  [PDOException]                                                                                  
  SQLSTATE[42000]: Syntax error or access violation: 1067 Invalid default value for 'created_at'
wanyutang
2016-02-21 05:20
@T厌氧De鱼:執行 composer update 後再 sudo php artisan migrate 看看
參考:https://github.com/twostairs/paperwork/issues/337
eddywon
2016-01-11 18:30
Page::create([
        'title'   => 'Title '.$i,
        'slug'    => 'first-page',
        'body'    => 'Body '.$i,
        'user_id' => 1,
      ]);
貌似这里有问题,应该改成下面的才能运行来着
DB::table('pages')->insert([
        'title'   => 'Title '.$i,
        'slug'    => 'first-page',
        'body'    => 'Body '.$i,
        'user_id' => 1,
      ]);
JohnLui
2016-01-11 18:52
@eddywon:Page 类需要在前面 use。
末路伯爵
2016-01-08 10:37
请问下这两个文件是怎么来的***_create_articles_table.php、***_create_pages_table.php,我跟着教程跟走的只有users和password的两个文件。我按照上面路由配置之后访问home页面直接报错:
ReflectionException in Route.php line 264:
Class App\Http\Controllers\HomeController does not exist
in Route.php line 264
at ReflectionMethod->__construct('App\Http\Controllers\HomeController', 'index') in Route.php line 264
at Route->signatureParameters('Illuminate\Database\Eloquent\Model') in Router.php line 838
at Router->substituteImplicitBindings(object(Route)) in Router.php line 823
at Router->substituteBindings(object(Route)) in Router.php line 806
at Router->findRoute(object(Request)) in Router.php line 670
at Router->dispatchToRoute(object(Request)) in Router.php line 654
at Router->dispatch(object(Request)) in Kernel.php line 246
at Kernel->Illuminate\Foundation\Http\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 52
at Pipeline->Illuminate\Routing\{closure}(object(Request)) in CheckForMaintenanceMode.php line 44
at CheckForMaintenanceMode->handle(object(Request), object(Closure))
at call_user_func_array(array(object(CheckForMaintenanceMode), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 32
at Pipeline->Illuminate\Routing\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 102
at Pipeline->then(object(Closure)) in Kernel.php line 132
at Kernel->sendRequestThroughRouter(object(Request)) in Kernel.php line 99
at Kernel->handle(object(Request)) in index.php line 53 。
能帮忙解答下吗?我的版本是5.2。
fade
2016-01-13 17:18
@末路伯爵:5.0以后的版本移除了auth模块。教程一开始就说了以5.0版本来写的。
我用5.1也出了这个问题。。
Aicy
2016-03-04 13:56
@fade:,请问你后面是怎么解决这个问题的,在5.1上
arthur
2016-03-16 12:00
@Aicy:很简单,执行php artisan make:auth就好了,参见官方文档:https://laravel.com/docs/5.2/authentication。
小七
2016-01-06 17:16
大神,全局类在哪里写,怎么调用啊,求指点啊
JohnLui
2016-01-06 17:25
@小七:类都是全局的呀。。。
小七
2016-01-06 17:30
@JohnLui:我不知道这样的全局函数放在哪里怎么调用
JohnLui
2016-01-06 17:30
@小七:学习下 命名空间,就明白了
iswant
2016-01-05 10:34
刚安装的laravel5.2,发现session不能用,这个问题很是扯淡,不知道还有没有人遇到这个问题,详细描述如下:
http://zhidao.baidu.com/question/2076165870789234268.html
Eric
2016-01-04 15:26
你好,我执行php artisan db:seed命令时出现以下错误
[Illuminate\Database\QueryException]
SQLSTATE[42S22]: Column not found: 1054 Unknown column 'title' in 'field li
st' (SQL: insert into `pages` (`title`, `slug`, `body`, `user_id`, `updated
_at`, `created_at`) values (Title 0, first-page, Body 0, 1, 2016-01-04 07:2
4:15, 2016-01-04 07:24:15))
[PDOException]
SQLSTATE[42S22]: Column not found: 1054 Unknown column 'title' in 'field li
st'
acaxia
2016-01-07 17:54
@Eric:数据库里没有title字段吧
谢谢
2015-12-31 11:54
非常感谢
丢小丢
2015-12-27 20:31
根本没有home目录 5.0.22 版本
proof
2015-12-24 16:51
[Illuminate\Database\QueryException]
  SQLSTATE[42000]: Syntax error or access violation: 1067 Invalid default value for 'created_at' (SQL: create table `users` (`id` int unsigned not null auto_increment primary k
  ey, `name` varchar(255) not null, `email` varchar(255) not null, `password` varchar(60) not null, `remember_token` varchar(100) null, `created_at` timestamp default 0 not nul
  l, `updated_at` timestamp default 0 not null) default character set utf8 collate utf8_unicode_ci)

我在执行php artisan migrate的时候就一直报这个错是怎么回事啊。。
何笙
2015-12-14 17:21
你好,我在做一个注册,完全没有弄明白,老师能给我一个思路么,我找了很多文件都没有解决,我注册的时候明明把E-mail去掉了,但是每次注册的时候还要提示我The email field is required.   老师能给我一个大概的思路么。
cc
2015-12-12 11:36
老师你好,我用了下面的那条命令改名后,网站就打不开了
php artisan app:name larvael5
------------------------------------------------------------------------------------------------------------------------------------------------------------
PHP Fatal error:  Uncaught exception 'ReflectionException' with message 'Class larvael5\Http\Kernel does not exist' in E:\www\13838\vendor\laravel\framework\src\Illuminate\Container\Container.php:776
Stack trace:
#0 E:\www\13838\vendor\laravel\framework\src\Illuminate\Container\Container.php(776): ReflectionClass->__construct('larvael5\\Http\\K...')
#1 E:\www\13838\vendor\laravel\framework\src\Illuminate\Container\Container.php(656): Illuminate\Container\Container->build('larvael5\\Http\\K...', Array)
#2 E:\www\13838\vendor\laravel\framework\src\Illuminate\Foundation\Application.php(613): Illuminate\Container\Container->make('larvael5\\Http\\K...', Array)
#3 E:\www\13838\vendor\laravel\framework\src\Illuminate\Container\Container.php(229): Illuminate\Foundation\Application->make('larvael5\\Http\\K...', Array)
#4 E:\www\13838\vendor\laravel\framework\src\Illuminate\Container\Container.php(773): Illuminate\Container\Container->Illuminate\Container\{closure}(Object(Illuminate\Foundation\Application), Array)
#5 E:\www\13838\vendor in E:\www\13838\vendor\laravel\framework\src\Illuminate\Container\Container.php on line 776



请问怎么还原呢??
aaa
2016-04-10 17:53
@cc:将vendor/composer/autoload_psr4.php的最后一行
    改为'YourAppName\\' => array($baseDir . '/app'),
Jill-Wang
2015-12-09 14:24
老师您好,网址上输入127.0.0.1可以打开是正常显示,但是我后面输入了/home就报404错误,下面没有那个文件,是怎么回事
LeeC
2015-12-13 23:01
@Jill-Wang:我也是这个错误!
qw
2015-12-14 11:19
@Jill-Wang:我的也是404。。在阿里云上是404.。
我本地用wamp。能正常显示。。
菠菜
2015-12-18 17:53
@qw:index.php/home 哦哦哦
lisam
2016-08-10 10:43
@qw:没有授权吧
小新
2015-12-08 11:05
老师请问,执行
D:\wamp\www\laravel>php artisan migrate

Fatal error: Call to undefined function Illuminate\Foundation\Bootstrap\mb_inter
nal_encoding() in D:\wamp\www\laravel\vendor\compiled.php on line 1809

报错,开启了mb_string扩展, 并且单独文件测试 mb_internal_ecoding函数没报错,一执行php artisan migrate 就报错,应该怎么解决呢
小新
2016-01-26 10:00
@小新:老师,您好,上面问题已解决!
          原因还是自己留的坑,我之前wampserver环境是 5.4.16,安装后会在系统环境变量会有这个值,之后又安装5.5.12,环境变量5.4的把5.5的覆盖了(5.4在前),但是wamp环境中的php5.4.16包我没删,所以在cmd中执行php ,自然就执行了5.4的!
backstreetwx
2015-12-03 09:51
老师您好
为什么我在第三步最后,注册成功后,在数据库查看用户的密码是一堆类似乱码的杂乱符号呢? 而不是密码本身?
比如我注册一个用户,使用密码 123456 ,在数据库中查看就是一大长串字母加数字加符号,而我手动将数据库中的这个符号修改为 123456后
登录的时候会提示 Whoops! There were some problems with your input. These credentials do not match our records.
请问这可能是哪里出问题了呢?谢谢!
JohnLui
2015-12-03 11:37
@backstreetwx:因为密码是加密存储的呀。。。。
backstreetwx
2015-12-04 18:32
@JohnLui:那请问老师
如果用户忘记了密码,而我数据库又不能直接修改这个密码
这种情况应该怎么办呢? 数据库不能把加密的密码解密查看吗?

谢谢! >_<
JohnLui
2015-12-04 18:34
@backstreetwx:虽然你态度很好,但是基础知识差的太多了,这些问题找个 QQ 群问问吧。。。。
backstreetwx
2015-12-04 18:53
@JohnLui:老师您好

查了下好像密码存进数据库自动MD5加密
因为以前都做客户端工作 android  IOS 之类的 ,前台的工作很多, 数据库以前只是学生项目,后台简单通过 sql语句增删改查并没有对密码进行处理所以数据库里的密码是明文的
看来实际的项目密码是必须处理的,感谢老师的回复
PHP的学习还得要努力啊
黄传备
2015-12-02 10:20
php artisan db:seed 楼主你好,这句话的时候提示SQLSTATE[42S22]:Column not found: 1054
Carrie
2016-01-28 15:11
@黄传备:你解决了吗?
我用的是windows一键安装的Laravel,cmd命令里面是没有composer的,
配置文件显示
"autoload": {
        "classmap": [
            "database"
        ],
直接执行php artisan db:seed,出现了同样问题
sha
2015-11-22 16:39
成功以后, tables 表和 pages 表已经出现在了数据库里,去看看吧~
tables表应该是articles表
anzichen
2015-11-23 11:54
@sha:是的
菜鸟
2015-11-22 13:20
redirect('basic/addProvince')->withInput()->withErrors('保存失败');
input 文本之前的值没有 怎么回事
JohnLui
2015-11-22 15:48
@菜鸟:需要使用 Laravel 的 Form 组件构件表单才行,而不是手写 input。
长青
2015-11-22 10:30
博主,请问一下,你现在发布的 laravel5.0教程,是否适合学习laravel5.1?
陌熙
2015-11-15 11:37
博主,我想请教您一个问题:我的laravel5项目在本机上(wamp)测试时全完没有问题的,现在要发布到线上(lnmp)后,访问public/index.php 是正常的,而访问其他url这提示file not found。需要哪些配置?求解,我对lnmp不是很熟悉
JohnLui
2015-11-15 15:56
@陌熙:伪静态配置,你去搜一下吧。
Gin
2015-11-10 17:05
博主您好,
我按照步骤在执行php artisan migrate的时候出现了错误
[PDOException]
  could not find driver
我的pdo_pgsql扩展是打开的

PDO

PDO support    enabled
PDO drivers    mysql, pgsql, sqlite

pdo_pgsql

PDO Driver for PostgreSQL    enabled
PostgreSQL(libpq) Version    9.2.2
Module version    1.0.2
Revision    $Id$

pgsql

PostgreSQL Support    enabled
PostgreSQL(libpq) Version    9.2.2
PostgreSQL(libpq)    Uninitialized version string (win32)
Multibyte character support    enabled
SSL support    disabled
Active Persistent Links    0
Active Links    0

Directive    Local Value    Master Value
pgsql.allow_persistent    On    On
pgsql.auto_reset_persistent    Off    Off
pgsql.ignore_notice    Off    Off
pgsql.log_notice    Off    Off
pgsql.max_links    Unlimited    Unlimited
pgsql.max_persistent    Unlimited    Unlimited


尝试了用PHP直接连postgresql正常,代码如下
<?php
$dsn = 'pgsql:dbname=kaigo;host=127.0.0.1;port=5432';
$user = 'kaigo';
$pass = 'kaigo';

try {
    $dbh = new PDO($dsn, $user, $pass);
    $sql = 'SELECT CURRENT_TIMESTAMP';
    foreach ($dbh->query($sql) as $row) {
        print $row[0] . "\n";
    }
    $dbh = null;
} catch (PDOException $e){
    print('[ERROR] ' . $e->getMessage() . "\n");
    die();
}
?>

.env文件数据库连接部分如下
DB_CONNECTION=pgsql
DB_HOST=127.0.0.1
DB_DATABASE=kaigo
DB_USERNAME=kaigo
DB_PASSWORD=kaigo

database.php文件部分如下

'default' => 'pgsql',
    'connections' => [
        'pgsql' => [
            'driver'   => 'pgsql',
            'host'     => env('DB_HOST', '127.0.0.1'),
            'database' => env('DB_DATABASE', 'kaigo'),
            'username' => env('DB_USERNAME', 'kaigo'),
            'password' => env('DB_PASSWORD', 'kaigo'),
            'charset'  => 'utf8',
            'prefix'   => '',
            'schema'   => 'public',
        ],

环境是win7 64位,wampserver2.5(apache 2.4.9+php 5.5.12),postgresql 9.2
如果是连接mysql和sqlite能够正常通过,连postgresql就会出现上面说的错误
按照网上说的将libpq.dll文件拷到了apache目录下依然没有用
请问该如何解决?
JohnLui
2015-11-10 17:23
@Gin:数据库用户名密码错误而已。
Gin
2015-11-10 17:55
@JohnLui:是我粗心了吗,我看了下我用PHP直接连postgresql的代码里面的用户名密码跟写在配置文件里的一样啊
JohnLui
2015-11-10 17:59
@Gin:看起来你是对的,确实是 pg 驱动不存在
Gin
2015-11-10 18:20
@JohnLui:被这个问题困扰了一天了,上谷歌也没搜到什么好的解决办法
Gin
2015-11-11 19:46
@JohnLui:我想可能是64位的问题
因为之前别的事情也是在wampserver64位上失败了,然后换32位就好了
于是我就直接全部换成了32位的,把wamp也换成了xampp
问题解决了
jz
2015-11-09 15:10
老师您好,我到最后一步的时候php artisan db:seed就出错了
  [ReflectionException]
  Class PageTableSeeder does not exist
董咚懂咚
2015-11-07 13:12
请问这个评论框用的是什么插件?之前好像有人问过,但是没找见……
JohnLui
2015-11-07 14:14
@董咚懂咚:这是 emlog 自带的
董咚懂咚
2015-11-07 15:54
@JohnLui:唉,好尴尬呀
jerrrrry
2015-11-04 16:12
老师您好

请问如何能有效的去除掉laravel5中的public、index.php
我之前只是将网站root下的server.php改名为index.php
这个只解决了一部分,比如访问www.com/laravel不再是以前的ww.com/laravel/public/index.php

但是别的部分,比如有页面跳转的情况,比如ww.com/page/1是server not fund
然而ww.com/index.php/page/1是可以访问页面

我已经把。htaccess里面的参数也修改了,还是没有起效
JohnLui
2015-11-04 16:25
@jerrrrry:在哪儿看的自己改文件名的。。。。给我个链接我去骂他。
你要直接把网站根目录配置到 public。
jerrrrry
2015-11-04 16:40
@JohnLui:老师您好
你说的是不是在config下面的app.php里面改写url的参数?
这个之前也改过,还是没有效果 = =。。。
JohnLui
2015-11-04 16:49
@jerrrrry:改你的 Apache 或者 nginx 的配置。
jerrrrry
2015-11-16 03:26
@JohnLui:老师,我已经更改apache的配置文件, 只是在访问domain.com的时候没有index.php,但是如果redirect到‘home'的地址,还是默认会帮你加一个index.php., 求老师给点提示,我也已经按照您的root下的.htaccess更改了, 还是去不掉indexphp这个碧池= =
jerrrrry
2015-11-15 14:16
@JohnLui:老师,我现在更改了apache的配置,已经可以去除public,但是还是需要加上index.php,才能正常的访问网站,是不是我还没改全。。
AGui
2015-10-28 19:22
老师你好, 是用了 jenssegers/laravel-mongodb 拓展包。。 数据都通了。。登录验证提交为什么老没反应?? 能指点一二吗?

http://120.25.106.144:8888/auth/login
wen
2015-11-06 14:40
@AGui:你好,我是laravel 新手,现在对这个laravel 使用mongo库,想请教一下
AGui
2015-11-07 00:16
@wen:先去 看下这个文档。
https://github.com/jenssegers/laravel-mongodb

然后试着用composer 安装上去。
wen
2015-11-07 09:26
@AGui:哈哈,太感谢了,以前没有仔细看过这种文档,一看英文的就懒得看了,今天看了一下,已经整好了
白菜
2015-11-27 01:13
@wen:@wen 你好,我按照文档安装之后,出现了如下错误,google了下没有找到好的解决方案呢,麻烦能帮忙看一下吗
Failed to connect to: localhost:27017: SASL Authentication failed on database 'admin': Authentication failed.
白菜
2015-11-27 01:14
@wen:你好,请问你出现了这个问题吗?
Failed to connect to: localhost:27017: SASL Authentication failed on database 'admin': Authentication failed.
zmphp
2015-10-26 20:50
怎么建个数据库,加几条语句都要php 什么artisn语句。。感觉好难的感觉。
阿郎
2015-10-19 11:11
/*
    |--------------------------------------------------------------------------
    | Application URL
    |--------------------------------------------------------------------------
    |
    | This URL is used by the console to properly generate URLs when using
    | the Artisan command line tool. You should set this to the root of
    | your application so that it is used when running Artisan tasks.
    |
    */
这是我看到的配置网站根目录的介绍,说是要配置到应用的根目录,可是应用的根目录不应该配置到learnlaravel5吗,
您为啥要配置到public呢
JohnLui
2015-10-19 11:26
@阿郎:不是我要配置到 public,是程序入口就在 public 里,任何人都要设置到 public 里。
xinshou
2015-10-15 10:51
$users = DB::table('user')->select('email', 'password')->get();这个可以但是我要是想往里面填东西就不行了,语法哪错了
$users = DB::table('user')->select('email'=$email, 'password'=$password)->get();
孤独的瘦子
2015-10-08 16:56
Request $request与Input::get('title') 有何区别?
lincoln
2015-10-02 10:01
您好!按照步骤走,碰到下面问题,求解
PHP Fatal error:  Call to undefined method PageTableSeeder::setContainer() in /home/opt/demos/lv_demo/laraveldemo/vendor/laravel/framework/src/Illuminate/Database/Seeder.php on line 57
                                    
  [Symfony\Component\Debug\Exception\FatalErrorException]  
  Call to undefined method PageTableSeeder::setContainer()
码农一枚
2015-10-01 21:03
请问安装成功后,提交注册信息就提示  BadMethodCallException in Controller.php line 283:
Method [validator] does not exist.  为什么?
TP9
2015-09-29 10:33
各位大神们,,,如果视图中通过表单POST提交数据,要提交到哪里?
CK
2015-09-23 15:14
老师您好,有配置网站根目录的教程吗
阳光男孩
2015-09-23 12:53
老师 我装好了 laravel 但是按照你 的代码 我这个 Route::get('/', 'WelcomeController@index'); <?php namespace App\Http\Controllers; use App\Http\Controllers\Controller; class WelcomeController extends Controller {     public function index()     {         return View::make('welcome');     } } 运行时 Whoops, looks like something went wrong. 1/1 FatalErrorException in routes.php line 18: Call to undefined method Illuminate\Routing\Route::get() 我是不是哪里 弄错了
我 composer update了
但运行还是Whoops, looks like something went wrong.
1/1 FatalErrorException in routes.php line 15: Call to undefined method Illuminate\Routing\Route::get()

还有就是 composer update 有什么作用呢
阳光男孩
2015-09-23 10:49
老师 我装好了 laravel 但是按照你 的代码
我这个 Route::get('/', 'WelcomeController@index');

<?php namespace App\Http\Controllers;

use App\Http\Controllers\Controller;

class WelcomeController extends Controller {

    public function index()
    {
        return View::make('welcome');
    }

}
运行时
Whoops, looks like something went wrong.
1/1 FatalErrorException in routes.php line 18: Call to undefined method Illuminate\Routing\Route::get()
我是不是哪里 弄错了
JohnLui
2015-09-23 10:54
@阳光男孩:目测 composer update 没有成功。我的代码也需要 composer update。
gorey
2015-09-21 10:38
DB_HOST=localhost
DB_DATABASE=laravel5
DB_USERNAME=root
DB_PASSWORD=123456
数据库用户名,密码都改了,执行php artisan migrate报错SQLSTATE[HY000] [1045] Access denied for user ‘homestead’@’localhost’ (using password: YES),homestead这个用户哪来的。。
angelito
2015-11-26 22:45
@gorey:想必你是改错文件了要修改的是.env,而不是.env.example
hugo
2015-12-02 16:18
@angelito:我是在   .env  里修改的但是没用,只有在  config/datebase.php  里修改
CC
2015-09-19 16:57
老师您好
我按教程运行到最后一步的时候

composer dump-autoload
php artisan db:seed

就报错了

  [ReflectionException]
  Class UserTableSeeder does not exist
请问是哪里的问题?
JZ
2015-09-21 10:17
@CC:[ReflectionException]
  Class  PageTableSeeder does not exist

我的是这个
近猪者痴
2015-10-08 10:34
@CC:稍微注意下,

//$this->call('UserTableSeeder');

$this->call('PageTableSeeder');

不是去掉comment而已.
梦遥奇缘
2016-04-02 00:21
@近猪者痴:这个是什么意思呢?我也在这挂了
wushd
2015-09-18 15:14
博主,请问一下,
<form action="{{ URL('admin/pages') }}" method="POST">
                            <input type="hidden" name="_token" value="{{ csrf_token() }}">
                            <input type="text" name="title" class="form-control" required="required">
                            <br>
                            <textarea name="body" rows="10" class="form-control" required="required"></textarea>
                            <br>
                            <button class="btn btn-lg btn-info">新增 Page</button>
                        </form>
这个action中并没有指明要调到pages中的哪个方法,为什么会进入store方法,laravel是怎么进行操作的?
TP9
2015-09-29 09:14
@wushd:根据<form action="{{ URL('admin/pages') }}" method="POST">,这里,由资源控制器处理的行为
胖子
2015-09-11 11:23
老师,我想继续填充其他的数据,安装教程上面的方法,进行模仿操作,代码如下:
WenTableSeeder.php
class WenTableSeeder extends Seeder {
    public function run()
    {
        DB::table('wens')->delete();

        for ($i=0; $i < 10; $i++) {
            Wen::create([
                'title'   => 'ArticlesTitle '.$i,
                'slug'    => 'first-article',
                'author'  => 'Lee '.$i,
                'tag'     => 'tag '.$i,
                'body'    => 'My is articles '.$i,
                'user_id' => 2,
                'image'   => 'jpg '.$i,                    
            ]);
        }        
    }
}
但是执行php artisan db:seed之后,总会提示这个错误:
Class 'Wen' not found
PHP Fatal error:  Class 'Wen' not found in D:\phpStudy\WWW\test\firstpj\database\seeds\WenTableSeeder.php on line 12
不知道该怎处理
JohnLui
2015-09-11 11:34
@胖子:\App\Wen
胖子
2015-09-11 12:11
@JohnLui:恩,你这么一说,一下子就懂了,我一直把App\page当成一个分页的内置模块看待了,所以没找到问题的关键。谢谢老师了
QQ
2015-09-09 17:57
楼主大大{笑容: 15 }

我想要修改用户的栏位
CREATE TABLE IF NOT EXISTS `users` (
  `users_id` int(10) unsigned NOT NULL,
  `users_name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
  `users_email` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
  `users_tel` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
  `users_password` varchar(60) COLLATE utf8_unicode_ci NOT NULL,
  `remember_token` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,
  `created_at` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
  `updated_at` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

改了view 也改了Service\Registrar.php 但是还是出现错误
QueryException in Connection.php line 620:
SQLSTATE[HY000]: General error: 1364 Field 'users_name' doesn't have a default value (SQL: insert into `users` (`updated_at`, `created_at`) values (2015-09-09 09:17:41, 2015-09-09 09:17:41))
JohnLui
2015-09-09 18:30
@QQ:insert into `users` (`updated_at`, `created_at`) values (2015-09-09 09:17:41, 2015-09-09 09:17:41) 这分明是什么数据都没有就要往里插。。。
QQ
2015-09-09 18:46
@JohnLui:程序跑到compiled.php
这行$model = new static($attributes);
users [fillable:protected] => Array ( [0] => name [1] => email [2] => password )
跟我设定的栏位不一样,还需要改哪些地方吗?
kk
2015-09-07 22:59
樓主 我按照您的步驟做了一遍 但我都一直無法進去後台管理界面
http://fuck.io:88 這頁可以出現
但到 http://fuck.io:88/home 則變成404 我不知道我哪做錯了請教教我
(v5.0.22)
JohnLui
2015-09-08 00:48
@kk:常见的伪静态问题,使用 fuck.io:88/index.php/home 即可。
LeeC
2015-12-13 23:03
@JohnLui:OK了!谢谢解答!
leng
2015-09-04 17:02
博主,你好。 碰到一个没想明白的地方

PagesController.php里面的public function edit只有
return view('admin.pages.edit')->withPage(Page::find($id));这一段代码,并没有看到分配的变量$page。
而且我把edit.blade.php里面的{{ $page->title }}改成{{ ¥pages->title }}后就会提示Undefined variable: pages
这个地方的变量名是在是么地方定义或分配的唷
JohnLui
2015-09-04 17:42
@leng:withPage,视图系统会自动去掉 with。细节源码可以参考 TinyView:https://github.com/TinyLara/TinyView
hhh
2015-09-01 15:44
PageTableSeeder.php中DB::table('pages')->delete();有什么用吗?
ahonn
2015-08-30 20:37
老师,您好,在访问public时出现错误,错误码500。而且我已经打开了debug,报错内容:FatalErrorException in AuthServiceProvider.php line 9: Class 'Illuminate\Foundation\Support\Providers\AuthServiceProvider' not found。

出现这个错误是为什么?我在网上搜索过,但也还是没有找到解决办法。

环境: Ubuntu 14.04
          PHP  5.5.9
         Apache 2.4.7
JohnLui
2015-08-30 21:10
@ahonn:可能你装的是 5.1 版本,没有自带的 Auth 了。
为真假
2015-08-28 18:20
您好,我在第一个栏目 fuck.io:80/home 就出了问题,直接蹦出了域名纠错系统   我去了
墨风
2015-08-30 13:54
@为真假:这个情况应该是你的apache模块rewrite配置不正确,或者是nginx的配置不正确
yadgen
2015-08-27 17:55
Installing laravel/laravel (v5.0.22)
  - Installing laravel/laravel (v5.0.22)
    Loading from cache

Created project in laravel
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Installation request for laravel/framework v5.0.16 -> satisfiable by laravel/framework[v5.0.16].
    - laravel/framework v5.0.16 requires ext-mcrypt * -> the requested PHP extension mcrypt is missing from your system.

照旧啊。。。
zh
2015-09-14 15:58
@yadgen:你好,我也遇到了你之前遇到的问题,请问可以帮我下吗?

Installing laravel/laravel (v5.0.22)
  - Installing laravel/laravel (v5.0.22)
    Loading from cache

Created project in laravel
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Installation request for laravel/framework v5.0.16 -> satisfiable by laravel/framework[v5.0.16].
    - laravel/framework v5.0.16 requires ext-mcrypt * -> the requested PHP extension mcrypt is missing from your system.
yadgen
2015-09-14 17:19
@zh:重新编译下mcrypt
yadgen
2015-08-27 17:29
Problem 1
    - Installation request for laravel/framework v5.0.16 -> satisfiable by laravel/framework[v5.0.16].
    - laravel/framework v5.0.16 requires ext-mcrypt * -> the requested PHP extension mcrypt is missing from your system.

mac下报这个错误,mcrypt在phpinfo可以看见的
JohnLui
2015-08-27 17:47
@yadgen:尝试重启 terminal,PHP 的 cli 环境需要刷新。
yadgen
2015-08-27 18:05
@JohnLui:重启n次terminal and php-fpm了
yadgen
2015-08-27 18:07
@JohnLui:mcrypt

mcrypt support => enabled
mcrypt_filter support => enabled
Version => 2.5.8
Api No => 20021217
Supported ciphers => cast-128 gost rijndael-128 twofish arcfour cast-256 loki97 rijndael-192 saferplus wake blowfish-compat des rijndael-256 serpent xtea blowfish enigma rc2 tripledes
Supported modes => cbc cfb ctr ecb ncfb nofb ofb stream

php-fpm -i查看的信息,没问题啊。
Vericlongmore
2015-09-05 13:46
@yadgen:你要先查看下which php 看PHP路径,如果你是第三方继承环境,要更改php配置路径
cd ~
vim ./bash_profile
添加一行
export PATH=/Applications/MAMP/bin/php/php5.4.10/bin:$PATH
保存退出
source  .bash_profile
然后which php 看变化 ,现在安装应该没啥问 我今天刚遇到, laravel5新手!
lenuico
2015-08-26 09:35
博主你好,我在学laravel5,我想向你请教个问题,就是网站页脚部分,一般都是@include包含的,每个页面都会有,那这个部分是怎么通过控制器来给页脚视图传值呢,不肯能每个页面请求都加上页脚的数据啊...
admin
2015-08-25 00:36
我刚开是照着你的教程在学习,在搭建框架的时候卡到“      数据库建立与迁移”    中个第一步了 我上面都一样可是我发现我的项目文件中没有`learnlaravel5/.env 这个文件,请问是什么原因啊?
JohnLui
2015-08-25 01:06
@admin:那就用 .env.example 自己建一个
踏雪留痕
2015-08-25 15:57
@JohnLui:我在修改.env.example 文件名的时候系统说不能必须键入文件名,我明明输了.env了啊,求解
JohnLui
2015-08-25 16:28
@踏雪留痕:windows 不允许以 . 开头。你还是直接在配置文件中配置参数吧,别管 .env 了,反正他也是传递一下。
宝吉
2015-08-24 14:33
composer create-project laravel/laravel laravel 5.0.22

Installing laravel/laravel (v5.0.22)
  - Installing laravel/laravel (v5.0.22)
    Loading from cache

Created project in laravel
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Installation request for phpunit/phpunit 4.5.0 -> satisfiable by phpunit/phpunit[4.5.0].
    - phpunit/phpunit 4.5.0 requires ext-dom * -> the requested PHP extension dom is missing from your system.


您好,请教一个问题 ,我在linux  安装报错 ,这个,有解决办法吗?   是加dom扩展 吗,但是加上了 没效果。
JohnLui
2015-08-24 14:58
@宝吉:是 dom 扩展,应该是没安装成功。别忘了重启。
宝吉
2015-08-24 16:56
@JohnLui:我这个php 版本是  5.5.28   没有dom扩展,是 php-xml 扩展,但是  安装不上。

yum install php-xml
Loaded plugins: fastestmirror
Setting up Install Process
Loading mirror speeds from cached hostfile
* base: mirrors.yun-idc.com
* extras: mirrors.btte.net
* remi-safe: mirrors.mediatemple.net
* updates: mirrors.yun-idc.com
Resolving Dependencies
--> Running transaction check
---> Package php-xml.x86_64 0:5.3.3-46.el6_6 will be installed
--> Processing Dependency: php-common(x86-64) = 5.3.3-46.el6_6 for package: php-xml-5.3.3-46.el6_6.x86_64
--> Processing Dependency: libxslt.so.1(LIBXML2_1.0.24)(64bit) for package: php-xml-5.3.3-46.el6_6.x86_64
--> Processing Dependency: libxslt.so.1(LIBXML2_1.0.22)(64bit) for package: php-xml-5.3.3-46.el6_6.x86_64
--> Processing Dependency: libxslt.so.1(LIBXML2_1.0.18)(64bit) for package: php-xml-5.3.3-46.el6_6.x86_64
--> Processing Dependency: libxslt.so.1(LIBXML2_1.0.13)(64bit) for package: php-xml-5.3.3-46.el6_6.x86_64
--> Processing Dependency: libxslt.so.1(LIBXML2_1.0.11)(64bit) for package: php-xml-5.3.3-46.el6_6.x86_64
--> Processing Dependency: libxslt.so.1()(64bit) for package: php-xml-5.3.3-46.el6_6.x86_64
--> Processing Dependency: libexslt.so.0()(64bit) for package: php-xml-5.3.3-46.el6_6.x86_64
--> Running transaction check
---> Package libxslt.x86_64 0:1.1.26-2.el6_3.1 will be installed
---> Package php-xml.x86_64 0:5.3.3-46.el6_6 will be installed
--> Processing Dependency: php-common(x86-64) = 5.3.3-46.el6_6 for package: php-xml-5.3.3-46.el6_6.x86_64
--> Finished Dependency Resolution
Error: Package: php-xml-5.3.3-46.el6_6.x86_64 (updates)
           Requires: php-common(x86-64) = 5.3.3-46.el6_6
           Installed: php-common-5.5.28-1.el6.remi.x86_64 (@remi-php55)
               php-common(x86-64) = 5.5.28-1.el6.remi
           Available: php-common-5.3.3-40.el6_6.x86_64 (base)
               php-common(x86-64) = 5.3.3-40.el6_6
           Available: php-common-5.3.3-46.el6_6.x86_64 (updates)
               php-common(x86-64) = 5.3.3-46.el6_6
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest

看的糊涂。
宝吉
2015-08-25 13:30
@JohnLui:非常感谢,是我的php 升级版本时操作失误才报错,重新升级就好了。
flower
2015-08-24 11:57
@站长 想请您讲一下5.0  扩展包的开发,怎么样建一个扩展包,谢谢
xp
2015-08-23 21:31
@站长,有个问题:
php artisan make:model Page会创建在app/Http/Page.php  model文件

在 ***_create_pages_table.php 中修改:   //为什么会生成pages名的文件而不是  page
Schema::create('pages', function(Blueprint $table)  //这里为什么不是page而是pages表
{
    $table->increments('id');
    $table->string('title');
    $table->string('slug')->nullable();
    $table->text('body')->nullable();
    $table->integer('user_id');
    $table->timestamps();
});
JohnLui
2015-08-23 22:36
@xp:Laravel 默认的表名是这个单词的复数形式,这个值也可以在 model 中指定。
wjc
2015-08-20 11:32
请教个问题,我在做数据填充时,为什么插入汉字时会报错,改了mysql字段字符集还是不行?
D:\www\learnlaravel5.1>php artisan db:seed

  [Illuminate\Database\QueryException]
  SQLSTATE[HY000]: General error: 1366 Incorrect string value: '\xD5\xC5\xC8\
  xFD"' for column 'Name' at row 1 (SQL: insert into `students` (`NO`, `Name`
  , `Class`, `Age`, `Birthday`, `updated_at`, `created_at`) values ("NO001",
  "????", "一??", 20, 1980-01-09, 2015-08-20 03:18:38, 2015-08-20 03:18:38))

  [PDOException]
  SQLSTATE[HY000]: General error: 1366 Incorrect string value: '\xD5\xC5\xC8\
  xFD"' for column 'Name' at row 1

源码最后改成这样的:
class StudentTableSeeder extends Seeder{
    public function run()
    {
       DB::table('students')->delete();
        $NO = 'NO001';
        $Name = '张三';
        $Class = '一班';
        $temp_date = '2015-01-09 19:25:43';
        Student::create([
            'NO' => '"'.$NO.'"',
            'Name' => '"'.$Name.'"',
            'Class' => '"'.$Class.'"',
            'Age' => 20,
            'Birthday' => date('Y-m-d',strtotime($temp_date))
        ]);
acsu
2015-08-15 14:09
楼主您好,我按教程全做完了。之后想试试分页功能,可是只有在“http://localhost/”这个地址上的分页成功了,"http://localhost/articles/"这个地址上的分页只能显示第一页,不论点击第几页的链接结果都是显示第一页,请问这个问题如何解决?
分页的代码如下:
ArticlesController.php
public function index()
{
    return view('articles.index')->withArticles(Article::paginate(2));
}

index.blade.php
<?php echo $articles->render(); ?>

生成的分页链接是这样的:http://localhost/articles/?page=4
这样还是显示第一页,
可是用这个地址:http://localhost/?page=4 就可以正常分页显示,
分页的代码都是一样的,我是新手,实在不知道该怎么弄了,请帮帮我吧
JohnLui
2015-08-22 14:03
@acsu:http://localhost/articles/?page=4 应该是 http://localhost/articles?page=4 才会起作用。
acsu
2015-08-24 18:48
@JohnLui:感谢楼主写了这么好的教程,还花时间来回答问题
我后来发现是nginx的配置写错了,
location / {
    try_files $uri $uri/ /index.php?$query_string;
}
这里不知道怎么回事写成:
location / {
    try_files $uri $uri/ /index.php;
}

少了最后的?$query_string,所以url里的查询参数都丢掉了。
胖子
2015-09-11 17:39
@JohnLui:老师,又打扰你了,我现在遇到的问题,想请教你一下:
我根据楼上那位同学的方法,在WenController.php里面:
    public function index()
    {    
        return view('wen')->withWens(Wen::paginate(15));
    }
然后打开http://127.0.0.1/test/firstpj/public/wen?page=3发现可以实现分页跳转,
但是把<?php echo $wen->render(); ?>或者变换格式 {{ $wen->render() }}放到wen.blade.php里,打开网页就出现错误代码。
想请教下,如何能也页面下形成那种正常的翻页效果?麻烦了
胖子
2015-09-11 18:00
@JohnLui:已经解决,
<div class="container">
    <?php foreach ($users as $user): ?>
        <?php echo $user->name; ?>
    <?php endforeach; ?>
</div>

<?php echo $users->render(); ?>

我没分好$users和$user
dafa
2015-08-11 14:37
现在时间是 14:36 而注册完之后时间却是6:00 , 所以在安装之后需要设置下 时区, 希望作者在文中加上!
Randy
2015-08-10 15:15
Parse error: syntax error, unexpected '[' in D:\WWW\learnlaravel5\vendor\laravel\framework\src\Illuminate\Foundation\helpers.php on line 383

博主你好,为什么windows上总有这个问题?我php的版本是5.6.11
JohnLui
2015-08-22 14:01
@Randy:这个确实是PHP版本低于5.4会出现的问题,通过 phpinfo() 看一下版本吧
xinxin
2015-08-09 12:41
博主你好,
请问“composer create-project laravel/laravel learnlaravel5 5.0.22”和“laravel new blog”有什么区别?
JohnLui
2015-08-09 12:47
@xinxin:第二种情况只适用于装了 Laravel 安装器在系统上。第一种是装了 composer 在系统上。
Neverland
2015-08-06 17:03
博主你好,在php artisan migrate的时候,出现SQLSTATE[HY000] [1045] Access denied for user ‘root’@’localhost’ (using password: YES)。然后重装了MYsql,问题并未解决...!help。。。
phperstar
2015-08-06 23:29
@Neverland:数据库配置的账号密码有问题吧,命令行下用配置信息连接数据库测试一下
景仁景行
2015-08-05 18:40
楼主你好,我自己下载的软件包,之前遇到的问题都没有了,但是走到显示pages列表的时候,Page:all()这段代码一直报错,是什么原因呢:
报错信息:Whoops, looks like something went wrong.
我自己测试过,用$page = new Page();是可以初始化的Page类的,所以这个我就不大清楚是什么原因导致的了。
JohnLui
2015-08-05 18:58
@景仁景行:你需要打开 debug 。。。。
景仁景行
2015-08-06 09:43
@JohnLui:是config/app.php吧,
'debug' => true,
我改过了
景仁景行
2015-08-06 10:31
@JohnLui:楼主你好,我刚刚那个问题已经解决,我贴出来分享一下
我仔细查看了报错信息,发现是数据库连接错误,数据库的连接信息是在config/database.php中,
我将其中的mysql配置信息修改一下,然后重新php artisan serve一下,就能读取出数据了。
景仁景行
2015-08-05 16:41
楼主,我用composer命令下载laravel的时候,会被卡在
- Installing doctrine/inflector (v1.0.1)
    Downloading: 60%
这儿,一直不往下走,请问如何处理。
JohnLui
2015-08-05 16:50
@景仁景行:推荐日本镜像。
fanninnypeom
2015-08-01 20:25
博主 我按照你说的都做了一遍 但是我进不去后台管理的界面
因为会自动转到auth的登录界面
可是我不知道邮箱账号和密码啊
博主你知道auth的默认账号密码是多少吗......
JohnLui
2015-08-01 23:34
@fanninnypeom:进不去,表还没建立呢,你跟着教程继续走就明白了~
cheng
2015-09-18 17:33
@JohnLui:博主您好,我完整看完了您的教程,除了去掉路由里的middleware=>auth,没找到其它方法能进后台。可能是我的疏漏,请指正。

提个建议,本教程第一章注明主要讲解 Auth 系统,但真的介绍Auth相关内容比较少,希望能更加完善。

另外,Laravel 5.1目前已经加入了 Auth,希望本教程也能升级到5.1,毕竟是首个 LTS 版本。

谢谢博主。
bruce
2015-08-01 01:09
composer dump-autoload 是重新生成autoload文件吧 在什么情况下才用重新生成这个文件呢?还望大神解释下。
JohnLui
2015-08-01 01:12
@bruce:在新建了类以后。
08LZX
2015-07-31 15:57
老师你好,我配置好后访问public为什么也显示500错误,文件夹应该有权限的
JohnLui
2015-07-31 16:10
@08LZX:composer update 没有成功?
08LZX
2015-07-31 16:30
@JohnLui:成功了,另外我用 安正超的安装神器也会报这样的错
08LZX
2015-07-31 17:05
@JohnLui:php版本没跟上..
Qi
2015-07-29 11:04
您好,对于laravel的伪静态等知识点请教下,谢谢
个人目前理解的是: 访问 ....../public/home 实际相当于 ......./public/index.php/home , 将index.php后面的home作为参数传递到index.php文件中,而后,针对routes.php的配置找到home对应的controller类进行调用处理, 请问这样理解对吗?
JohnLui
2015-07-29 15:52
@Qi:对
Frank
2015-07-28 23:16
composer dump-autoload
在这里,它的作用是什么呢?
cpw
2015-07-28 12:03
请问一下 我想引入以前写的一些工具类和方法 该怎么引
JohnLui
2015-07-28 14:28
@cpw:Laravel 5 对整个 app 目录进行了 PSR-4 自动加载,就是说保持命名空间和文件夹名称一致,就可以自动引入了。
小白
2015-07-27 12:46
老师您好,教程十分明了。
我只搭在了本地,为什么我通过 http://localhost/learnlaravel5/home/ 返回404,
通过 http://localhost/learnlaravel5/public/home 能去到 Auth,
看了 phpinfo(),已经开启了 rewrite_mod,http://localhost/learnlaravel5/public/,也能顺利的跳到跟您一样的页面。
JohnLui
2015-07-27 15:37
@小白:因为入口文件是 public/index.php。
ylic
2015-07-25 10:04
感谢博主制作这份新手教程,教程的全部代码已经测试完成。目前有一个问题。
发现速度会有点卡,我测试首页,显示1000条记录的列表页,,要费时1.3秒,不查询数据库的页面还可以,在0.2秒这内。这个是什么问题,还是说框架都有这样的速度问题,请大神回复。
JohnLui
2015-07-27 01:15
@ylic:数据库可以优化的,基本都是设计问题,跟框架没关系。

2015-07-23 13:56
您好。
运行php artisan migrate时候
Could not open input file: artisan

没找到解决方法, 那些命令是在cmd下运行嘛。。什么路径呢?  我这边到指定路径时会提示'' 不是内部或外部命令,也不是可运行的程序
或批处理文件。

谢谢解答
JohnLui
2015-07-23 18:15
@土:Laravel 项目根目录下有一个叫 artisan 的文件,在那里执行 php artisan。
ocean
2015-07-21 15:10
你好,我在执行php artisan migrate时提示:
PDOException
SQLstate[hy000][2006]MySql server has gone away
请问这个要怎么解决呢?谢谢。。。
JohnLui
2015-07-21 15:16
@ocean:MySQL 服务未启动
ocean
2015-07-21 15:24
@JohnLui:服务已经启动了。
http://localhost:88/phpmyadmin/
用phpmyadmin登陆mysql是可以得。
凤翼天堂
2015-07-21 12:43
老师你好 在最后一步的时候提示:Class 'App\Page' not found in /Library/WebServer/Documents/books/database/seeds/PageTableSeeder.php on line 12
是什么问题 可是在App目录下有Page.php
JohnLui
2015-07-21 14:27
@凤翼天堂:顶部没写 namespace App; ?
凤翼天堂
2015-07-21 14:29
@JohnLui:Page.php的顶部嘛 namespace是项目的名字我是运行这个建立的:php artisan make:model Page
JohnLui
2015-07-21 14:36
@凤翼天堂:那你要注意把所有的 App 都换成你自己设定的名字。话说没事别乱改,Laravel 确实提供了这个功能,但是由于大部分人其实都不用,里面有多少 bug 谁都不知道
凤翼天堂
2015-07-21 14:37
@JohnLui:QvQ冤枉啊 我是用命令生成之后就是它(books)的我并没有修改过<?php namespace books;
JohnLui
2015-07-21 14:41
@凤翼天堂:我的意思是,老老实实用 App 吧。。。。
tony
2015-07-18 10:58
我下载了最新的laravel5.1和最新的mongodb3.0.4但是在执行php artisan migrate时报:  [InvalidArgumentException]  Unsupported driver [mongodb]。我用php直接连通mongodb,发现是可以执行CRUD操作的,证明php的mongo扩展没有问题。那就是laravel5.1还不支持最新的mongodb驱动么?
JohnLui
2015-07-21 14:34
@tony:可能是 Laravel 5.1 有 bug,不兼容最新的 mongodb 驱动。
mike
2015-07-18 00:47
请问一下我如何在模板中使用项目中的资源地址呢?
我看您的代码中直接使用/css/xxx.css 就可以定向到public/css/xxx.css了这是怎样做到的呢?
如果我想使用一些类似常量的方法就像ThinkPHP中__URL__/public/css这样的引用地址又有那些常量或者替代方法呢?
多谢解答!
JohnLui
2015-07-20 10:51
@mike:因为web服务器根目录是 public 目录。
mike
2015-07-20 22:33
@JohnLui:我看项目生成了server.php这个文件,它不是入口吗?这两个文件什么关系呢?还有框架之中没有处理静态资源目录的方法吗?类似nodejs express 中就有app.use(express.static('public'));方法,这样一个框架肯定也有办法管理这些吧,可是我找了它全部的文档也没找到好方法,望指教,多谢!
JohnLui
2015-07-21 14:29
@mike:public/index.php 是入口。 PHP 只是一堆文件而已,你访问哪个,他就解释哪个。静态资源留给 Apache 和 nginx 来处理,PHP 就负责解释 .php 文件。多理解,多感受。
Hugo
2015-07-16 12:12
你好,请问这个***_create_articles_table.php 文件是怎么来的呢? 是要我手动创建吗?还有就是前面三个星号是要省略什么呢?
JohnLui
2015-07-21 14:32
@Hugo:要省略的是日期,这个时间是这个文件自动生成时候的时间。这个文件不用手动创建,是在建立model的自动创建的。
潇湘子
2015-08-03 17:13
@JohnLui:老师您好,我执行make:model后只生成了model文件,没有***_create_articles_table.php,这会是哪些原因引起的呢?
JohnLui
2015-08-03 17:34
@潇湘子:没生成的可能性不大,目测是你没找到地方。。。
潇湘子
2015-08-03 17:36
@JohnLui:谢谢老师耐心回答,后来找到问题是make:model后没有添加 --migration。我粗心了
helenandyoyo
2015-07-14 10:30
博主你好:
         再次请教一下:采用Composer-Setup.exe或命令行请求方式配置composer失败。所以我直接下载了composer.phar文件。本人电脑是win7系统,官网配置composer为系统全路径环境变量的指令我在win7命令行下试了无效。请问该将composer.phar如何配置?(ps:昨天试的只能在特定路径下运行 php composer.phar 才有效,直接composer无效,没有百度到直接下载composer.phar然后进行配置的具体操作)
        谢谢指教!
JohnLui
2015-07-14 14:14
@helenandyoyo:composer 只是一段 PHP 脚本而已,安装 composer 创建 composer 环境变量只是使用 composer 命令代替了 php composer.phar 而已。你可以把 composer.phar 放到项目根目录,每次都通过 php composer.phar dump-autoload 即可。
helenandyoyo
2015-07-13 09:30
博主你好:
        本人下载的是laravel5一键安装包版,现在要执行composer dump-autoload,但是预先没有下载过composer。laravelv-5.0.22\vendor文件夹中存在一个composer文件夹,是否是将该路径添加到path环境变量中?如果没有添加composer环境变量,则执行报错:'composer' 不是内部或外部命令,也不是可运行的程序或批处理文件。
        谢谢指教!!!
JohnLui
2015-07-13 10:38
@helenandyoyo:composer 是一个需要安装的软件。
新手求教
2015-07-11 18:26
博主求问如何保留注册登录功能。。就是要可以注册登录再进去发帖回复的
哒哒
2015-07-10 11:43
我执行  php artisan migrate  
出现的是  Nothing to migrate  ????
JohnLui
2015-07-21 14:33
@哒哒:因为已经 migrate 过一次了,在数据库里已经有记录了。解决办法是清空数据库。
helenandyoyo
2015-07-09 17:56
改为一键安装laravel5.0.22版进行学习,乱码发生:
1、在http://localhost:8000/home输入邮箱和密码,界面跳转后出现SQLSTATE[HY000] [2002] ÓÉÓÚÄ¿±ê¼ÆËã»ú»ý¼«¾Ü¾ø£¬ÎÞ·¨Á¬½Ó¡£
2、win7 命令行输入 php artisan migrate出现:[PDOException]  SQLSTATE[HY000] [2002] ????目???????????芫????薹????印?
请问是什么原因?
浏览器是unicode编码形式。
JohnLui
2015-07-09 18:06
@helenandyoyo:数据库连接错误。
helenandyoyo
2015-07-09 20:13
@JohnLui:我之前把lavarel5放置在xampp的服务器目录htdcos下,出现上述问题,刚才把larave5迁出,就好了。难道与laravel文件放置的路径有关?
helenandyoyo
2015-07-09 18:07
@helenandyoyo:追加:
      具体界面如下:

Whoops, looks like something went wrong.
1/1 PDOException in Connector.php line 47: SQLSTATE[HY000] [2002] ÓÉÓÚÄ¿±ê¼ÆËã»ú»ý¼«¾Ü¾ø£¬ÎÞ·¨Á¬½Ó¡£

    in Connector.php line 47
    at PDO->__construct('mysql:host=localhost;dbname=homestead', 'homestead', 'secret', array('0', '2', '0', false, '0')) in Connector.php line 47
    at Connector->createConnection('mysql:host=localhost;dbname=homestead', array('driver' => 'mysql', 'host' => 'localhost', 'database' => 'homestead', 'username' => 'homestead', 'password' => 'secret', 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', 'prefix' => '', 'strict' => false, 'name' => 'mysql'), array('0', '2', '0', false, '0')) in MySqlConnector.php line 20
    at MySqlConnector->connect(array('driver' => 'mysql', 'host' => 'localhost', 'database' => 'homestead', 'username' => 'homestead', 'password' => 'secret', 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', 'prefix' => '', 'strict' => false, 'name' => 'mysql')) in ConnectionFactory.php line 58
    at ConnectionFactory->createSingleConnection(array('driver' => 'mysql', 'host' => 'localhost', 'database' => 'homestead', 'username' => 'homestead', 'password' => 'secret', 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', 'prefix' => '', 'strict' => false, 'name' => 'mysql')) in ConnectionFactory.php line 47
    at ConnectionFactory->make(array('driver' => 'mysql', 'host' => 'localhost', 'database' => 'homestead', 'username' => 'homestead', 'password' => 'secret', 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', 'prefix' => '', 'strict' => false), 'mysql') in DatabaseManager.php line 177
    at DatabaseManager->makeConnection('mysql') in DatabaseManager.php line 65
    at DatabaseManager->connection() in PasswordResetServiceProvider.php line 63
    at PasswordResetServiceProvider->Illuminate\Auth\Passwords\{closure}(object(Application), array()) in Container.php line 773
    at Container->build(object(Closure), array()) in Container.php line 656
    at Container->make('auth.password.tokens', array()) in Application.php line 613
    at Application->make('auth.password.tokens') in Container.php line 1231
    at Container->offsetGet('auth.password.tokens') in PasswordResetServiceProvider.php line 39
    at PasswordResetServiceProvider->Illuminate\Auth\Passwords\{closure}(object(Application), array()) in Container.php line 773
    at Container->build(object(Closure), array()) in Container.php line 656
    at Container->make('auth.password', array()) in Application.php line 613
    at Application->make('Illuminate\Contracts\Auth\PasswordBroker') in Container.php line 887
    at Container->resolveClass(object(ReflectionParameter)) in Container.php line 848
    at Container->getDependencies(array(object(ReflectionParameter), object(ReflectionParameter)), array()) in Container.php line 813
    at Container->build('App\Http\Controllers\Auth\PasswordController', array()) in Container.php line 656
    at Container->make('App\Http\Controllers\Auth\PasswordController', array()) in Application.php line 613
    at Application->make('App\Http\Controllers\Auth\PasswordController') in ControllerDispatcher.php line 83
    at ControllerDispatcher->makeController('App\Http\Controllers\Auth\PasswordController') in ControllerDispatcher.php line 54
    at ControllerDispatcher->dispatch(object(Route), object(Request), 'App\Http\Controllers\Auth\PasswordController', 'getEmail') in Route.php line 198
    at Route->runWithCustomDispatcher(object(Request)) in Route.php line 131
    at Route->run(object(Request)) in Router.php line 691
    at Router->Illuminate\Routing\{closure}(object(Request))
    at call_user_func(object(Closure), object(Request)) in Pipeline.php line 141
    at Pipeline->Illuminate\Pipeline\{closure}(object(Request))
    at call_user_func(object(Closure), object(Request)) in Pipeline.php line 101
    at Pipeline->then(object(Closure)) in Router.php line 693
    at Router->runRouteWithinStack(object(Route), object(Request)) in Router.php line 660
    at Router->dispatchToRoute(object(Request)) in Router.php line 618
    at Router->dispatch(object(Request)) in Kernel.php line 210
    at Kernel->Illuminate\Foundation\Http\{closure}(object(Request))
    at call_user_func(object(Closure), object(Request)) in Pipeline.php line 141
    at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in VerifyCsrfToken.php line 43
    at VerifyCsrfToken->handle(object(Request), object(Closure)) in VerifyCsrfToken.php line 17
    at VerifyCsrfToken->handle(object(Request), object(Closure)) in Pipeline.php line 125
    at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in ShareErrorsFromSession.php line 55
    at ShareErrorsFromSession->handle(object(Request), object(Closure)) in Pipeline.php line 125
    at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in StartSession.php line 61
    at StartSession->handle(object(Request), object(Closure)) in Pipeline.php line 125
    at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in AddQueuedCookiesToResponse.php line 36
    at AddQueuedCookiesToResponse->handle(object(Request), object(Closure)) in Pipeline.php line 125
    at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in EncryptCookies.php line 40
    at EncryptCookies->handle(object(Request), object(Closure)) in Pipeline.php line 125
    at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in CheckForMaintenanceMode.php line 42
    at CheckForMaintenanceMode->handle(object(Request), object(Closure)) in Pipeline.php line 125
    at Pipeline->Illuminate\Pipeline\{closure}(object(Request))
    at call_user_func(object(Closure), object(Request)) in Pipeline.php line 101
    at Pipeline->then(object(Closure)) in Kernel.php line 111
    at Kernel->sendRequestThroughRouter(object(Request)) in Kernel.php line 84
    at Kernel->handle(object(Request)) in index.php line 53
    at require_once('D:\xampp\xampproot\htdocs\laravel-v5.0.22\public\index.php') in server.php line 21
果子
2015-07-09 11:12
您好!博主,我在完成laravel安装后,访问:http://myservername/home 时,出现404页面,为什么不能出现登录页面?有可能是什么原因?
直接访问:http://myservername/是可以出现首页的
爱吃果子
2015-07-11 18:02
@果子:可能是伪静态没搞好。。。 试着访问http://myservername/ index.php/ home
helenandyoyo
2015-07-09 10:36
初学者请教:本人下载的是lavarel一键安装包,是否也可以按照这个教程学习?
JohnLui
2015-07-09 10:54
@helenandyoyo:just try it
Frank
2015-07-28 23:43
@helenandyoyo:v5.0.22 一键包有坑,所有文件编码是GBK,小心.
王凯波
2015-07-08 10:20
请问,执行composer dump-autoload时出现这个错误:

Composer could not find a composer.json file in C:\Users\MyPC\AppData
To initialize a project, please create a composer.json file as described in the
https://getcomposer.org/ "Getting Started" section

找不到composer.json这个文件是什么原因?
王凯波
2015-07-08 15:02
@王凯波:解决了,目录没有切换过去
YLD
2015-07-07 15:47
你好,楼主,数据库迁移完成之后,访问localhost/laravel/public或localhost/laravel/home,都会出现以下问题
Whoops, looks like something went wrong.
1/1 RuntimeException in compiled.php line 6608: No supported encrypter found. The cipher and / or key length are invalid.
JohnLui
2015-07-07 16:20
@YLD:你需要 mcrypt 这个 PHP 插件。其实百度一下就能查到哦
stannisshuang
2015-07-07 02:19
关于
"然后将网站根目录配置为 learnlaravel5/public。
如果你不会配置,建议去学会配置,网上资料很多。如果自暴自弃,可以把 的第 29 行 'url' => 'http://localhost', 配置成你的子目录地址,注意,要一直配置到 ***/learnlaravel5/public。"

抱歉,我是web开发初学者,查了一晚上了还是没解决这个问题,请帮忙看看是什么原因,谢谢!

Define SRVROOT "F:/Apache24"
ServerRoot "${SRVROOT}"

LoadModule rewrite_module modules/mod_rewrite.so

DocumentRoot "F:/WWW/learnlaravel5/public"
<Directory "F:/WWW/learnlaravel5/public">
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

这是我的httpd.conf配置(win7+apache2.4+php5.6),改完重启了,主页还是没转过来,依然显示的是F:/Apache24下的index.php , 请问是什么地方没设置对?
谢谢!
JohnLui
2015-07-07 11:11
@stannisshuang: 你完全没改对地方,再查查吧。。。
stannisshuang
2015-07-07 21:31
@JohnLui:谢谢回复。

能提示一些关键字吗? 没有概念啊。

谢谢。
JohnLui
2015-07-08 10:54
@stannisshuang:Apache 伪静态
iat.net.cn
2015-06-27 10:17
讲得很好,不知是否可以推出5.1的,LTS版本的用的人会多些
瞬间
2015-06-29 11:04
@iat.net.cn:同问
vendor
2015-06-19 11:24
想问下楼主:5.1好还是5.0好?5.1是不是开发得还不完善?你说的少了主要元素是指?
lunarfire
2015-07-02 13:57
@vendor:5.1好,因为5.1是长期支持的版本。对于框架或者开源软件,能得到稳定的版本和长期的维护真是福音。
Eager
2015-06-19 00:26
什么时候出一个Lumen的教程啊!求
JohnLui
2015-06-19 13:14
@Eager:lumen 太不完善了,推荐 TinyLara ~ http://tinylara.com/
lywindl
2015-06-18 17:07
至此,数据库迁移已完成,你可以打开 http://fuck.io:88/home 欢快地尝试注册、登录啦。

我没有欢快的注册哈 一但注册就报错 我是新手 不太明白 他说的方法是指那个地方 麻烦您 指点一下 我用的是 5.1.2

Whoops, looks like something went wrong.
1/1
BadMethodCallException in compiled.php line 8714:

Method [validator] does not exist.
JohnLui
2015-06-18 19:10
@lywindl:"本系列教程使用 Laravel 5.0 版本,5.1 版本有部分更新,但幅度不大。"

这个部分被拿掉了。
agan
2015-06-18 15:50
楼主能否把你的代码发送给我,我的邮箱是1586843890@qq.com
JohnLui
2015-06-18 16:59
@agan:
agan
2015-06-25 10:07
@JohnLui:啊哈  不用了  弄会了  谢谢你的教程
icecream
2015-06-18 14:39
5.1已经没有HomeController了呀
lx1036
2015-07-20 19:25
@icecream:5.1没有HomeController的,开始我要是觉得奇怪的呢,
agenge
2015-06-17 14:05
使用的5.1,默认没有HomeController.php
Derek
2015-06-14 23:22
博主你好,非常感谢你的教程

我目前使用Phpstorm在学习Laravel,在写model create脚本的时候,下面的语句:
$table->string('slug')->nullable();
Phpstorm提示Illuminate\Support\Fluent不提供此方法“nullable()", 我看了下Fluent里确实没有定义。但是执行artisan migration又是成功的,而且数据库字段也定义了NULL。这是怎么一回事呢?
多谢解答
JohnLui
2015-06-15 00:20
@Derek:PHP 是一种可以千变万化的解释型语言,静态检查工具并不能像编译器那样给出确切的问题,刚开始不建议使用 IDE 来学习。当然非常熟悉之后是可以使用 IDE 来提高开发效率的。所以这个问题的答案也很简单:PhpStorm 的自动侦测 Illuminate\Support\Fluent 有误或不足。
vilay
2015-06-14 11:18
大神,问个弱智问题,是不是数据库表名一定要加s
JohnLui
2015-06-14 11:46
@vilay:根据标准美式英文习惯用法来决定是否加s
vilay
2015-06-15 09:45
@JohnLui:能不能详细说明下啊,没懂什么意思
litbear
2015-06-13 15:20
您好 博主 我下载了Laravel5.1 routes.php里只注册了根的路由,并且写法也不是之前那种基于反射的方式而是直接返回了一个return view('welcome');
请问是5.1版本去掉了自带的auth视图吗?
litbear
2015-06-14 09:39
@litbear:经查阅【https://laravel-news.com/2015/06/laravel-5-1-released/】证实 Eric Barnes :With 5.1 the auth routes and views are no longer included so I don't think it's needed any longer. Of course I could be wrong.
那么另一个问题来了,composer如何安装制定版本的Laravel呢?
JohnLui
2015-06-14 11:45
@litbear:仔细看文章哦,我在上面安装的时候指定了版本哦~
litbear
2015-06-14 12:42
@JohnLui:明白了 THX
allen
2015-06-10 15:29
不好的教程比没有教程危害更大,特别是对初学者,database/seeds/PageTableSeeder.php 中的Page命名空间信赖于项目名,不是App\Page,我的项目是laraveldemo,所以应该是use laraveldemo\Page;否则会报错PHP Fatal error:  Class 'App\Page' not found
JohnLui
2015-06-10 16:02
@allen:
凤翼天堂
2015-07-21 14:49
@allen:我也遇到了这个问题 谢谢 相同方法解决了!
younh
2015-06-10 00:01
指教下大神,在本地环境配置和测试laravel5无问题,为什么上传到虚拟空间后只有根目录首页能显示,其他都报无法访问的错误呢?路由那边的问题吗?路径和数据库链接我检查过没问题,就是不知道问题在哪
JohnLui
2015-06-10 11:13
@younh:目测是 .htaccess  Apache 伪静态问题。
younh
2015-06-10 11:46
@JohnLui:感谢提醒,问题已解决,是虚拟空间的服务器是iis的缘故。。。把htaccess转换成web.config后,一切正常了
Xander
2015-06-07 17:13
我去我竟然配成功了,不容易啊
lemo
2015-06-05 22:38
你好,看了你的教程进行数据填充的时候提示 Class DatabaseSeeder does not exist     已进行dump-autoload操作,而且我是根据你的例子写的是PageTableSeeder为什么提示的是 DatabaseSeeder 求解答
JohnLui
2015-06-10 11:13
@lemo:应该是低级错误,你再检查一下
凤翼天堂
2015-07-21 14:51
@lemo:也出现了这个问题 请问你当时是怎么解决的
duluwa
2015-06-04 08:38
小白请教一个两个问题。。

第一个:迁移数据的时候执行到php artisan fresh 这一步,然后发现migrations文件夹里的create文件都消失了,然后在想第二次执行php artision migrate的时候显示Nothing to migrate。现在无法第二次数据库迁移。。。

第二个:routes里添加auth以后访问首页显示找不到auth文件夹
JohnLui
2015-06-04 11:31
@duluwa:php artisan fresh 的意思就是删掉重来。“想第二次执行php artision migrate的时候显示Nothing to migrate”,这是一个特性/bug,只能先手动清空数据库,删掉所有的表,再进行第二次迁移。

第二个问题目测是理解错了路由。。。
初学者
2015-06-02 16:46
出了个问题折腾了好一段时间! 如果碰到一下错误提示的朋友,不妨试一下。

php artisan migrate 命令执行后提示一下错误

[PDOException]                                    
SQLSTATE[HY000] [2002] No such file or directory


解决方法:
根目录下有个.env的文件打开后找
host=localhost  把这一段改成
host=127.0.0.1 才能顺利执行
Yison
2015-05-27 10:39
ok,还是之前没细看浏览器的请求时间,是谷歌字体的原因。感谢楼主!
Yison
2015-05-27 10:28
楼主你好,刚接触这个框架,我已经安装完了,注册登陆都好用了,但是有个问题咨询下 为什么运行起来这么缓慢?我打开welcome页面就等很久?请问这个如何优化一下,我百度了下貌似没人反应运行缓慢的问题。我是默认安装的,程序包就20M 是因为加载了太多的插件导致运行缓慢吗?
初学者
2015-06-02 16:54
@Yison:浏览器->开发者模式->网络

看看页面加载的时候是不是导入google字体了? 如果你不翻x墙的话加载谷歌字体这一块会拖延很长时间。
希望对你有帮助
kidjourney
2015-05-26 15:15
chmod 777 不是什么好习惯吧。。。。
JohnLui
2015-05-27 10:11
@kidjourney:但是授予其他任何权限都是跑不起来的哦
Jack
2015-05-21 22:26
本地服务器配置都ok了www.laravel5.com都通过apache配置到了laravel5/public了能出现laravel5的图片了加上home就不显示了
JohnLui
2015-05-21 23:13
@Jack:应该是伪静态没有配置
墨风
2015-05-22 17:29
@JohnLui:我也是同样的问题,Apache 已经开启mod_rewrite了,权限设置里面也同样设置了,但是还是出现这个问题
乌鸦
2015-05-21 13:24
大神求救阿。
今天我在实验室用composer create-project laravel/laravel 安装的时候,一直抱错!之前一直好好的,而且现在宿舍电脑安装也没问题。。。一直无法解决。
cmd错误信息:

Generating autoload files
Could not open input file: artisan
Script php artisan clear-compiled handling the post-install-cmd event returned with an error

  [RuntimeException]
  Error Output:

create-project [-s|--stability="..."] [--prefer-source] [--prefer-dist] [--repos
itory-url="..."] [--dev] [--no-dev] [--no-plugins] [--no-custom-installers] [--n
o-scripts] [--no-progress] [--keep-vcs] [--no-install] [--ignore-platform-reqs]
[package] [directory] [version]
JohnLui
2015-05-21 15:38
@乌鸦:尝试翻墙吧
是这样子啦
2015-05-21 09:17
看完教程结尾的大作业内容,我在想pages数据表和articles数据库表各自代表含义和区别,不然难以下手。
JohnLui
2015-05-21 15:37
@是这样子啦:他们差不多啦,完全模仿就行~
无邪
2015-05-19 14:35
你好, 我这个运行php artisan migrate  。提示 Could not open input file: artisan 。这是什么意思啊。 我把文件路径调的laravel 根目录。 composer 也是安装好的。 求解
JohnLui
2015-05-19 15:18
@无邪:根目录下应该有一个文件,叫 artisan
是这样子啦
2015-05-20 15:03
@无邪:应该是文件权限问题,敢问你是神马系统环境
求救2
2015-05-17 12:44
php artisan migrate,这条命令在哪里输入啊?
是这样子啦
2015-05-19 08:43
@求救2:例如,我的项目根目录为C:\wamp\www\laravel。 laravel文件夹下存在artisan。 那么用命令 cd C:\wamp\www\laravel切到该文件目录下使用php artisan migrate。
求救。。。
2015-05-17 09:31
http://fuck.io:88/home,这一步不能出现教程说的登陆框,而是出现了404not find 大神求救解决。环境为WAMP,访问http://127.0.0.1:88/没问题。
JohnLui
2015-05-17 11:13
@求救。。。:伪静态失败~
求救2
2015-06-28 19:17
@JohnLui:那怎么设置呀?
hoi
2015-07-03 11:58
@求救。。。:WAMP 默认没有打开 rewrite 模块,打开它就可以了。
我也用的WAMP,本来想和其它项目区分开来,使用 http://localhost/laravel/ 作为项目的根路径,结果发现这样也会出现你描述的问题,后来改回 htpp://localhost 就正常了。
结论:
1、项目要配置在根路径 / ;
2、apache 的 rewrite 模块要打开。
Angel
2015-05-17 09:03
老师,请教一下?这个错,怎么解决啊?Warning: require(F:\testphp\th-online\weixin\bootstrap/../vendor/autoload.php): failed to open stream: No such file or directory in F:\testphp\th-online\weixin\bootstrap\autoload.php on line 17

Fatal error: require(): Failed opening required 'F:\testphp\th-online\weixin\bootstrap/../vendor/autoload.php' (include_path='.;C:\xampp\php\PEAR') in F:\testphp\th-online\weixin\bootstrap\autoload.php on line 17
JohnLui
2015-05-17 11:14
@Angel:composer update忘了执行了?
laravel初学者_
2015-05-15 14:21
大哥您好 数据库怎么配置。照着步骤都最好了
php artisan migrate打这个
出现了这个
[PDOException]
  SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: YES)
然后怎么处理了 求帮忙谢谢
JohnLui
2015-05-15 14:32
@laravel初学者_:这就是账号密码错误
redsword
2015-06-03 18:38
@laravel初学者_:这样,你先把.env 文件里的DB_PASSWORD=password 改成空,即 DB_PASSWORD=  
然后在mysql(我用的是xampp)里手动建一个空的laravel5数据库

然后再运行migrate命令
gglinux
2015-05-13 21:59
您好,请教下。不知道为什么始终进入不了laravel的欢迎页面。

1:用浏览器打开的时候没有任何错误提示,就是无法加载(服务器未发生数据)。
2:如果在public文件夹下直接写一个index.html替换掉index.php,能够访问到index.html。
3:storage的权限是777。
4:php的版本是PHP 5.5.9-1ubuntu4 (cli).
5:初始化的时候,composer没有提示错误
JohnLui
2015-05-14 00:14
@gglinux:尝试在index.php里输出数据,一行一行地尝试,最终能定位到哪一步有问题。
gglinux
2015-05-14 10:06
@JohnLui:我把bootstrap/autoload.php第30行以下的注销掉,他就能显示出欢迎页了。这时候会生成新的compiled.php文件。搞不明白为什么会这样。。。之前这个compiled.php的权限就是777了。。。难道是这个自带的compiled.php文件有问题
// $compiledPath = __DIR__.'/../vendor/compiled.php';
// echo $compiledPath;
// if (file_exists($compiledPath))
// {
//     require $compiledPath;
// }
JohnLui
2015-05-14 10:11
@gglinux:说明 Composer 运行失败
gglinux
2015-05-14 10:31
@JohnLui:....
Generating autoload files
Generating optimized class loader
Compiling common classes
Application key [iXziec00aQMs3g9FvADQrnO4mI2MZXB0] set successfully.

Composer运行时没有报错了。。。按理说注销掉compiled.php那几行,不会影响后续的工作吧
JohnLui
2015-05-14 10:42
@gglinux:"按理" 按的是谁的理
gglinux
2015-05-14 10:49
@JohnLui:
$compiledPath = __DIR__.'/../vendor/compiled.php';
// if (file_exists($compiledPath))
// {
//     require $compiledPath;
// }

这段代码的含义,如果存在该文件的话,就返回呗。我注销了(不存在),应该有后续的处理的(例如生成新的)。就是不知道这样的话,会不会影响后期的工作,我觉得应该不会。而且不知道具体的错误原因,还是个疙瘩,好蛋痛。。。
JohnLui
2015-05-14 11:18
@gglinux:应该就是 Composer update 没有成功的原因,你开 VPN 试试吧
python
2015-05-11 22:08
这是第二次从头开始看
感觉好像有很多东西都需要知道
文档只是手把手跟着写,却有很多地方又没有解释

有种依葫芦画瓢的感觉啊~
volg
2015-05-10 02:04
这个教程很有用。。。 顶!!
Hilaravel
2015-05-02 13:35
对了  再补充一下,storage已设置777权限。
JohnLui
2015-05-02 14:22
@Hilaravel:用了 sudo chmod -R 777 storage 了吗?
Hilaravel
2015-05-02 13:33
lnmp环境。安装好后访问首页 500错误  访问domain.com/home  看到URL能跳转到登录页  但还是500错误。一直都是白屏没有任何显示。求解
dougisadog
2015-04-28 14:52
直接从git 上clone的代码 执行 composer install后 更改完config的url为pubic的路径 访问 500错误
JohnLui
2015-04-28 15:29
@dougisadog:Laravel 5 中的 URL 配置没有 CI 中那么重要。500 错误可能是 storage 目录没有 777 权限。
JohnLui
2015-04-28 15:31
@dougisadog:而且“更改完config的url为pubic的路径” 是错误的,应该直接把根目录指向 learnlaravel5/public,public 目录内会有 index.php 承接访问,调用资源,返回结果。
dougisadog
2015-04-29 21:55
@JohnLui:用composer 直接create远程的景象 不用改配置就好用了   git上clone的 就还是报错 除了network500  没有其他的debug 输出 不过还是谢谢了 的研究研究源码 手册没什么用。。。
Wonvy
2015-04-22 15:38
php artisan migrate

我一到命令这里就不知道如何下手了,是windows自带的命令吗
cnxuev
2015-04-26 02:35
@Wonvy:php指的应该是安装PHP5后的php.exe文件,把文件路径加入到系统变量的path中,然后在项目文件夹(learnlaravel5)中运行上述命令即可
小乐丫中文网
2015-04-21 12:48
手机访问的界面很好
好东西
2015-04-18 03:19
好东西
Hui
2015-04-17 17:37
大神您好,文件上传成功了,把图片放到storage/uploads中了,怎么在视图中展示图片啊,img的src不会写。。
JohnLui
2015-04-17 17:38
@Hui: 上传的文件如果要显示,就必须上传到 upload 文件夹中。。。
Hui
2015-04-17 17:41
@JohnLui:upload文件夹可以在任何地方吗??还是固定的storage中?显示的时候图片路径怎么给?谢谢大神
JohnLui
2015-04-17 18:25
@Hui:上面说错了,必须传到 public 中
洪远
2015-04-17 11:47
在执行 php artisan migrate 命令之后我对 Page 表进行了修改
再执行 php artisan migrate 就提示Noting to migrate !!怎么破
更惨的是我在数据库中drop 掉了 Page 表
JohnLui
2015-04-17 12:41
@洪远:migrate 是把用于 migrate 的 PHP 代码自动映射到数据库中。如果想修改数据库结构,按照 Laravel 的使用逻辑应该是新建一个对 pages 表的 migrate 文件,修改它,然后再运行 php artisan migrate。
长安布衣侯
2015-04-11 19:45
只有一个问题,网页反应速度超慢,基本上都是需要20s才能出现。这个是怎么回事呢
leo
2015-04-13 11:25
@长安布衣侯:你说的内容应该是里面加载了google的一些字体
694297232
2015-04-07 16:16
楼主写的文章通熟易懂,此乃神文也。。。。总之非常感谢!
还有可以引用下你的链接吗?
JohnLui
2015-04-07 17:20
@694297232:可以
Hui
2015-04-07 15:33
这个新建model后会不会有文件生成?还有我想用mongodb数据库来连接,请问有教程吗?ajax这块有没有教程?
JohnLui
2015-04-07 17:18
@Hui:新建 Model 之后当然会有 Model 文件生成
用 MongoDB 只需要修改一下配置文件。Ajax 跟 Laravel 本身没有什么特殊的联系。
Hui
2015-04-07 18:18
@JohnLui:可是我怎么也找不到Model文件,model文件夹里没有,但是控制器里对数据库操作神奇的能用,还有个问题就是子视图是什么意思?是iframe那种的嵌套页面吗?谢谢大神
JohnLui
2015-04-07 18:31
@Hui:没有 model 文件夹吧
哥们我没法解答你的问题了,太基础了,建议多补补基础
Hui
2015-04-07 18:46
@JohnLui:谢谢了,刚接触laravel,感觉好难啊。
蒲蒲陈
2015-04-03 18:12
你好,向你请教一个larave5问题,我在后台建立了一个adminControll 控制器 - 公共的,后台所有的控制器都要继承于 admin
在 admin控制器中 use了一些公共资源,
如: use App\Http\Requests;
        use App\Http\Controllers\Controller;
        use Illuminate\Http\Request;
        use Redirect, Input, Auth;
现在遇到的问题是,在menus控制器里面,如果没有加载如下两个资源
       use Illuminate\Http\Request;
        use Redirect, Input, Auth;
就会报错,加载上内容正确,是不是不能再admin控制器中use呢?
JohnLui
2015-04-04 00:02
@蒲蒲陈:他们两个是独立的类,use 不能继承。
azxkill
2015-04-02 19:30
额,刚看到评论有跟我一样的问题,之前没看到,不好意思~我的也是证书的原因吗~~~
JohnLui
2015-04-03 11:56
@azxkill:是因为 Github 间歇性被墙的原因
azxkill
2015-04-02 19:28
G:\laravel>composer create-project laravel/laravel learnlaravel5
Installing laravel/laravel (v5.0.22)
  - Installing laravel/laravel (v5.0.22)
    Loading from cache

Created project in learnlaravel5
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
  - Installing jakub-onderka/php-console-color (0.1)
    Downloading: 100%
    Downloading: 100%
    Downloading: 100%
    Failed to download jakub-onderka/php-console-color from dist: The "https://a
pi.github.com/repos/JakubOnderka/PHP-Console-Color/zipball/e0b393dacf7703fc36a4e
fc3df1435485197e6c1" file could not be downloaded: failed to open stream: 由于连
接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。

    Now trying to download from source
  - Installing jakub-onderka/php-console-color (0.1)
    Cloning e0b393dacf7703fc36a4efc3df1435485197e6c1

  - Installing vlucas/phpdotenv (v1.1.0)
    Downloading: Connecting...
大哥,你好,我是第一次玩composer,请问下,我己经用了中国镜像,还出这个错是什么原因呢.我连你教程的第一步都跑不了.麻烦解答下好么~~谢谢~~
拖鞋门吹雪
2015-04-01 23:27
文中有几处 learnlaravel5/databases 应该为learnlaravel5/database 文件夹
JohnLui
2015-04-02 10:25
@拖鞋门吹雪:
chen
2015-04-01 08:04
博主,你好,请问能不能把需要的数据表,表格式贴出来。。不懂数据迁移,想自己手动创建数据库,苦于不知道结构
JohnLui
2015-04-01 10:49
@chen:建议学会数据迁移。不知道你不想学习数据迁移的原因是什么?
芳华如梦
2015-03-31 20:03
访问/home怎么是404???
我是用软链接/var/www/demo指向/documents/demo/public下的
apache的document root是/var/www
JohnLui
2015-04-01 12:22
@芳华如梦:首页能访问的话,就是伪静态问题,需要配置 .htaccess。
spike
2015-04-01 17:41
@JohnLui:我也碰到过类似的问题,确实是服务器配置问题~再来感谢下大神~
martlet
2015-03-31 11:18
在laravel中用 artisan 会在以后的开发过程中很方便吗。。。 我以前用别的框架从没用到过这样子的命令工具,都是手动敲代码,手动建立数据表,现在artisan用起来很不习惯。。 就是想请教一下, 使用laravel,可以不用 artisan 吗,会不会影响开发速度啊
JohnLui
2015-03-31 11:47
@martlet:可以不用,就是麻烦一点,也没什么问题。
Lirui
2015-03-30 17:57

老师,我用的超神的lavavel包,不能执行composer命令,错误原因:composer不是内部或外部.........
,有什么解决办法吗,谢谢了,好久了解决不了
JohnLui
2015-03-31 01:48
@Lirui:composer 是一个软件,需要安装…
freeacger
2015-03-28 18:19
hi,请问最后一步里为什么要先使用 composer dump-autoload 命令再执行php artisan db:seed
JohnLui
2015-03-28 18:36
@freeacger:因为 PageTableSeeder  这个文件没有被加入自动载入,直接 seed 被报错,找不到类。
freeacger
2015-03-28 18:46
@JohnLui: 了解了感谢回复
volg
2015-05-10 02:15
@JohnLui:请问一下, 这个autoload.php是用来搞什么的呢?
JohnLui
2015-05-10 11:08
@volg:这是 composer 的自动加载。
Oo雨天阳光oO
2015-09-07 01:08
@JohnLui:请问博主 我按教程先执行 composer dump-autoload 然后再执行php artisan db:seed 它还是提示找不到类,怎么破?谢谢
[Symfony\Component\Debug\Exception\FatalErrorException]
  Class 'Page' not found
JohnLui
2015-09-07 22:41
@Oo雨天阳光oO:Laravel 5 是不需要 composer update的,你应该是需要 use App\Page;
Oo雨天阳光oO
2015-09-12 18:23
@JohnLui:谢谢博主回复 确实是没有引用 use App\Page;造成的 刚接触Laravel小白一枚 以为用Laravel Generators包 用make:seed自动创建的文件会帮我引用好呢 见笑了哈
latetgod
2015-03-27 19:16
你好! 在" 5.数据库填充 Seeder"那里,是不是不用数据库字段"image"的?  可是我这里报关于字段错...
JohnLui
2015-03-27 19:17
@latetgod:目前还没有用到,但是字段设为了可空,应该不管他也没问题。
HOOLOO
2015-03-27 11:31
请问,我想用laravel 5配合postgresql使用,请问要怎么设置?
JohnLui
2015-03-27 12:29
@HOOLOO:config/database.php 里面有 pgsql 这一项。
李朝
2015-03-24 17:04
请问您用的 emlog的模版是什么
JohnLui
2015-03-24 17:32
@李朝:在这里 http://www.emlog.net/template/518
yunlongw
2015-03-23 01:07
http://localhost/LearnLaravel5/public/
一直报这个错,请问怎么解决
Fatal error: Class 'Illuminate\Foundation\Application' not found in C:\xampp\htdocs\LearnLaravel5\bootstrap\app.php on line 14
JohnLui
2015-03-23 01:27
@yunlongw:难道你 PHP 版本低于5.4?
不高兴
2015-03-22 11:38
luoqianlideMacBook-Pro:blog qianli$ composer dump-autoload
Generating autoload files
luoqianlideMacBook-Pro:blog qianli$ php artisan db:seed
PHP Fatal error:  Uncaught exception 'UnexpectedValueException' with message 'The stream or file "/Users/qianli/Web/blog/storage/logs/laravel-2015-03-22.log" could not be opened: failed to open stream: Permission denied' in /Users/qianli/Web/blog/vendor/monolog/monolog/src/Monolog/Handler/StreamHandler.php:84
Stack trace:
#0 /Users/qianli/Web/blog/vendor/monolog/monolog/src/Monolog/Handler/RotatingFileHandler.php(88): Monolog\Handler\StreamHandler->write(Array)
#1 /Users/qianli/Web/blog/vendor/monolog/monolog/src/Monolog/Handler/AbstractProcessingHandler.php(37): Monolog\Handler\RotatingFileHandler->write(Array)
#2 /Users/qianli/Web/blog/vendor/monolog/monolog/src/Monolog/Logger.php(265): Monolog\Handler\AbstractProcessingHandler->handle(Array)
#3 /Users/qianli/Web/blog/vendor/monolog/monolog/src/Monolog/Logger.php(543): Monolog\Logger->addRecord(400, 'exception 'Unex...', Array)
#4 /Users/qianli/Web/blog/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php(47): Monolog\Logger->error('exception 'Unex...')
in /Users/qianli/Web/blog/vendor/monolog/monolog/src/Monolog/Handler/StreamHandler.php on line 84
PHP Fatal error:  Uncaught exception 'UnexpectedValueException' with message 'The stream or file "/Users/qianli/Web/blog/storage/logs/laravel-2015-03-22.log" could not be opened: failed to open stream: Permission denied' in /Users/qianli/Web/blog/vendor/monolog/monolog/src/Monolog/Handler/StreamHandler.php:84
Stack trace:
#0 /Users/qianli/Web/blog/vendor/monolog/monolog/src/Monolog/Handler/RotatingFileHandler.php(88): Monolog\Handler\StreamHandler->write(Array)
#1 /Users/qianli/Web/blog/vendor/monolog/monolog/src/Monolog/Handler/AbstractProcessingHandler.php(37): Monolog\Handler\RotatingFileHandler->write(Array)
#2 /Users/qianli/Web/blog/vendor/monolog/monolog/src/Monolog/Logger.php(265): Monolog\Handler\AbstractProcessingHandler->handle(Array)
#3 /Users/qianli/Web/blog/vendor/monolog/monolog/src/Monolog/Logger.php(543): Monolog\Logger->addRecord(400, 'exception 'Symf...', Array)
#4 /Users/qianli/Web/blog/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php(47): Monolog\Logger->error('exception 'Symf...')
in /Users/qianli/Web/blog/vendor/monolog/monolog/src/Monolog/Handler/StreamHandler.php on line 84
luoqianlideMacBook-Pro:blog qianli$


请问做到这个教程,创建10个文章的时候,怎么报错呢
JohnLui
2015-03-22 11:42
@不高兴:/Users/qianli/Web/blog/storage/logs/laravel-2015-03-22.log 没有写入权限。
spike
2015-03-20 18:59
老师求教。。我确定我的根目录设置到了/public,为啥加上/home一直404呢。。
好吧,我承认我是greenhand。。
JohnLui
2015-03-20 20:07
@spike:参考这里:http://laravel-china.org/docs/5.0/configuration
spike
2015-03-23 09:58
@JohnLui:多谢指教!
spike
2015-03-23 13:15
@JohnLui:还想问一下。我在windows下看到的是.env.example是不是您第三步所说的.env呢?但是修改文件(username&password)后,进行数据库迁移操作一直报错( SQLSTATE[HY000] [1045] Access denied for user 'forge'@'localhost' (using password: NO))。
然后我尝试在database.php中直接修改mysql的相关用户数据,迁移成功了。
感觉像是没有读取.env.example这个文件。想再请教下是怎么回事
JohnLui
2015-03-23 14:33
@spike: .env.example 这个文件的意思是 example
spike
2015-03-31 17:13
@JohnLui:我又来问问题了。。好吧和laravel好像没什么直接关系。。
是这样的,我用git add -A整个项目的时候,为什么vendor文件夹识别不了的样子。。其他文件都一个不剩的提交了。只有vendor的文件一个都add不了。。想再请教一下
JohnLui
2015-03-31 18:30
@spike:查看 .gitignor 文件。
spike
2015-04-01 13:05
@JohnLui:多谢!
kakachen
2015-03-19 22:25
老师,我也是在第三步的时候遇到了错误,请您指教。谢谢!
C:\Users\Administrator\Desktop\blog>php artisan migrate

[PDOException]
Access denied for user 'root'@'localhost' (using password:YES)

我的.ENV文件如下:
APP_ENV=local
APP_DEBUG=true
APP_KEY=SomeRandomString

DB_HOST=localhost
DB_DATABASE=laravel5
DB_USERNAME=root
DB_PASSWORD=password

CACHE_DRIVER=file
SESSION_DRIVER=file
QUEUE_DRIVER=sync

MAIL_DRIVER=smtp
MAIL_HOST=mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
JohnLui
2015-03-19 22:26
@kakachen:账号密码错误。
kakachen
2015-03-19 22:31
@JohnLui:刚入手新人,那laravel的mysql如何验证用户名和密码呢?
kakachen
2015-03-19 22:47
@JohnLui:老师,我现在把.env文件中的DB_PASSWORD=password这句话删了,现在应该可以连接了。我猜原因是database.php中有这样一句话'password'  => env('DB_PASSWORD', ''), 如果配置文件中没有DB_PASSWORD,就为空密码,不知道我这样理解是否正确?
另外,现在新的错误是unknown database ‘laravel5’,我是需要新建这个数据库么?
JohnLui
2015-03-20 00:03
@kakachen:对
appgirl
2015-03-18 12:21
版主,你好~我配置的IIS,网站指定到public文件夹,浏览可以看到laravel5的页面,但是浏览http://localhost/admin的时候提示找不到页面,怎么办呢?
JohnLui
2015-03-18 12:59
@appgirl:IIS 需要独特的伪静态规则,官方文档没有提供。你可以通过在连接中加入 index.php 解决,如:http://localhost/index.php/admin
AragornYang
2015-03-20 22:29
@JohnLui:可以使用IIS的url_rewrite插件将.htaccess中的规则转换到web.config
xxy
2015-03-17 12:58
我又在routes.php 中加入了Route::get('/', function(){ echo("123");});依然是空白输出
xxy
2015-03-17 12:49
我在第一步安装完后,输入网址,并不能出现welcome的界面,是空界面。当我在public/index.php 随意写echo("text");后,是有输出test的。当访问***/home的时候,报 Not Found
JohnLui
2015-03-17 15:20
@xxy:这是因为没有把网站根目录设置成 learnlaravel5/public 而是设置成了 learnlaravels
hecate
2015-04-03 16:58
@JohnLui:大神啊!请指教,我不会配置网站根目录啊,菜鸟一枚。给个详细的laravel的配置链接关于网站根目录
JohnLui
2015-04-03 17:22
@hecate:配置根目录跟 PHP 没啥关系,是 Apache 和 Nginx 之类的网络服务器的配置项。
Max Sky
2015-03-16 17:28
用virtualhost,配置了根目录public然后directory也指向public
结果就出来个404,如果把AllowOverride 设置为All,就来一个:
NotFoundHttpException in compiled.php line 7693:
in compiled.php line 7693
at RouteCollection->match(object(Request)) in compiled.php line 6965
at Router->findRoute(object(Request)) in compiled.php line 6937
at Router->dispatchToRoute(object(Request)) in compiled.php line 6929
at Router->dispatch(object(Request)) in compiled.php line 1935
at Kernel->Illuminate\Foundation\Http\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in compiled.php line 8952
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in compiled.php line 2438
at VerifyCsrfToken->handle(object(Request), object(Closure)) in VerifyCsrfToken.php line 17
at VerifyCsrfToken->handle(object(Request), object(Closure)) in compiled.php line 8944
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in compiled.php line 12083
at ShareErrorsFromSession->handle(object(Request), object(Closure)) in compiled.php line 8944
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in compiled.php line 10785
at StartSession->handle(object(Request), object(Closure)) in compiled.php line 8944
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in compiled.php line 11789
at AddQueuedCookiesToResponse->handle(object(Request), object(Closure)) in compiled.php line 8944
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in compiled.php line 11738
at EncryptCookies->handle(object(Request), object(Closure)) in compiled.php line 8944
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in compiled.php line 2478
at CheckForMaintenanceMode->handle(object(Request), object(Closure)) in compiled.php line 8944
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in compiled.php line 8935
at Pipeline->then(object(Closure)) in compiled.php line 1891
at Kernel->sendRequestThroughRouter(object(Request)) in compiled.php line 1880
at Kernel->handle(object(Request)) in index.php line 53
JohnLui
2015-03-16 18:14
@Max Sky:这依然是伪静态配置问题,继续搜索,你能搞定的
Max Sky
2015-03-16 19:36
@JohnLui:已解决。。没用VirtualHost。。。全局那个改成了public就好了
yunlongw
2015-03-16 13:42
我安装还是出错,依然找不到页面。 是不是你们的服务器地址改了 ,希望能尽快与你取得联系。
我留了邮箱地址,麻烦你加一下,
JohnLui
2015-03-16 13:56
@yunlongw: 你在说什么。。。你是不是改名了。。。前面没有发现你的评论呀。。。你是谁。。。。。
DuanPengfei
2015-03-16 09:12
博主,安装时出现了这样的问题,但是我手动访问下载地址是可以下载的,是什么原因啊
```
Created project in Simpress
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
  - Installing jakub-onderka/php-console-color (0.1)
    Downloading: 100%        
    Downloading: 100%        
    Downloading: 100%        
    Failed to download jakub-onderka/php-console-color from dist: The "https://api.github.com/repos/JakubOnderka/PHP-Console-Color/zipball/e0b393dacf7703fc36a4efc3df1435485197e6c1" file could not be downloaded: SSL operation failed with code 1. OpenSSL Error messages:
error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
Failed to enable crypto
failed to open stream: operation failed
    Now trying to download from source
  - Installing jakub-onderka/php-console-color (0.1)
    Cloning e0b393dacf7703fc36a4efc3df1435485197e6c1

  - Installing vlucas/phpdotenv (v1.1.0)
```
JohnLui
2015-03-16 12:30
@DuanPengfei:SSL 证书验证错误。可能是你装了 GoAgent 之类的东西改乱了证书。
JohnLui
2015-03-16 12:31
@DuanPengfei:也可能是本地 PHP 环境问题,不支持 SSL。
DuanPengfei
2015-03-22 06:30
@JohnLui:恩,没有及时来看回答,这两天已经用起来了,是我的 PHP 的问题,多谢博主的教程,现在已经可以上手写代码了。
Hover
2015-03-12 22:33
博主你好,求教:我做到第3部的时候执行migrate出现错误,能看下怎么回事吗?我开始以为这是因为用系统自带的记事本程序打开修改.env文件导致编码错误,可无论保存成utf-8 还是ansi格式都有相识的错误。

D:\>cd www/

D:\www>cd learnlaravel5

D:\www\learnlaravel5>php artisan migrate
锘?*************************************
*     Application In Production!     *
**************************************

Do you really wish to run this command? [y/N] y

  [PDOException]
  SQLSTATE[HY000] [1044] Access denied for user ''@'localhost' to database 'f
  orge'
JohnLui
2015-03-12 23:03
@Hover:数据库用户名密码错误。
hover
2015-03-13 19:48
@JohnLui:谢谢回复!解决了,最后发现是直接打开修改.env文件中的主机设置,用户名设置,密码设置,默认的中间都是没有换行符。直接拷贝博主的代码就没有问题了
wchen4129
2015-03-19 21:46
@JohnLui:老师,你好!我也是遇到了这个问题,您博客里面说“Laravel 5 把数据库配置的地方改到了 `learnlaravel5/.env`”,可是config/database.php下也有设置,那这个是干什么的呢?
JohnLui
2015-03-19 22:25
@wchen4129:database.php 里面代码的意思就是从 learnlaravel5/.env 里面取得配置。。。
duike
2015-03-11 10:33
在 5. 数据库填充 Seeder 这一步:
错误提示:
  There are no commands defined in the "db:" namespace.  
  Did you mean this?
JohnLui
2015-03-11 10:53
@duike:不科学 这是内置命令
duike
2015-03-11 10:55
@JohnLui:我按照教程一步一步来的,其他地方一点问题都没有
JohnLui
2015-03-11 11:03
@duike: 你检查一下是不是输错了。这问题只能一点一点排查了
九零代
2015-06-14 19:10
@duike:是因为   你给写成 php artisan db::seed了
phper
2015-03-10 21:29
博主你好,我想请问下,我访问localhost/laravel/public/home,按照你的教程,正常的显示了登陆界面,但是之后的链接点击以后,访问到的地址都默认为localhost了,就比如点击register后,就跳转到http://localhost/auth/register,请问在哪里配置服务器地址?我在app.blade.php中看见都是使用的相对地址,我在你的源码里面看也没有任何改动
JohnLui
2015-03-10 22:21
@phper:你需要配置服务器直接把网站根目录指向 laravel/public,不再使用子路径。
kaka
2015-03-09 13:22
nginx/1.2.5 上 安装成功,访问 域名 或者 域名index.php 能显示欢迎页
访问 index.php/home, 出现 404 Not Found
PHP 5.5+,MySQL 5.1+环境,尚未对laravel5做任何修改,
请问 johnlui大神,是不是在nginx上,laravel5还需要特殊配置?
(同台服务器,默认能运行laravel4.2)
JohnLui
2015-03-09 13:30
@kaka:不加 index.php 试试?
kaka
2015-03-10 00:31
@JohnLui:也不行。奇怪。本地win环境Apache正常 更新到远程不行了。直接在远程主机安装也不行。
秦始皇
2015-03-10 09:33
@kaka:nginx 没有配置pathinfo
kaka
2015-03-10 16:09
@秦始皇:谢谢。搜了一下pathinfo,解决了。
appgirl
2015-03-18 12:52
@kaka:pathinfo怎么设置,我遇到的问题和你的一样,求教
justjavac
2015-03-09 10:36
速度很快啊,赞。
JohnLui
2015-03-09 13:30
@justjavac:

发表评论:

© 2011-2024 岁寒  |  Powered by Emlog