热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

初试laravel-搭建环境篇

环境window10,php5.2.0,mysql5.7.17开发工具SublimeText3,MySQLWorkbench,Googlechrome55.0.2883.87

环境

window10,php5.2.0,mysql5.7.17

开发工具

Sublime Text3,MySQL Workbench,Google chrome 55.0.2883.87 m

搭建环境到第一个表单提交数据,并写入数据库

1. 安装php

2. 安装mysql

直接下载的官网的.zip,解压后需修改一下配置文件,然后就可以直接用啦。

3. 安装MySQL Workbench

一款专为MySQL设计的ER/数据库建模工具

4. 安装Laravel

window有一种方法,直接下载一个压缩包,解压就可以用

参照这篇文章

现在,你可以在浏览器中看到laravel 5,运行起来了,接着,我们去看看目录结构

我们会发现,显示的laravel5是在根目录下resources/views/welcome.lable.php;


<html>
<head>
<title>Laraveltitle>



<style>
html, body {
height: 100%;
}


body {
margin: 0;
padding: 0;
width: 100%;
display: table;
font-weight: 100;
font-family: 'Lato';
}


.container {
text-align: center;
display: table-cell;
vertical-align: middle;
}


.content {
text-align: center;
display: inline-block;
}


.title {
font-size: 96px;
}

style>
head>
<body>
<div class="container">
<div class="content">
<div class="title">Laravel 5div>
div>
div>
body>
html>

此时浏览器地址栏的访问地址是:http://localhost:8000/

应用是如何找到这个文件的?我们可以在./app/Http/routes.php中找到答案;


/*
|--------------------------------------------------------------------------
| Routes File
|--------------------------------------------------------------------------
|
| Here is where you will register all of the routes in an application.
| It's a breeze. Simply tell Laravel the URIs it should respond to
| and give it the controller to call when that URI is requested.
|
*/

Route::get('/', function () {
return view('welcome');
});


/*
|--------------------------------------------------------------------------
| Application Routes
|--------------------------------------------------------------------------
|
| This route group applies the "web" middleware group to every route
| it contains. The "web" middleware group is defined in your HTTP
| kernel and includes session state, CSRF protection, and more.
|
*/

Route::group(['middleware' => ['web']], function () {
//
});

5. 运行MySQL

在没有修改任何mysql的文件的情况下:

1.mysqld –install

输出:”service sucessfully installed”
2.net start mysql

输出: “MySQL 服务正在启动”“MySQL 服务无法启动”

这个问题在网上找到很好的解决方法:

修改根目录下my-default.ini文件中的如下两个配置

basedir=C:\mysql-5.7.17-winx64 //mysql的根目录地址

datadir = C:\mysql-5.7.17-winx64\data //根目录下的data文件夹(不用自己手动创建,早期版本好像有data这个文件夹,后来被去掉啦,不过这不碍事)

# These are commonly set, remove the # and set as required.
basedir = C:\mysql-5.7.17-winx64
datadir = C:\mysql-5.7.17-winx64\data
# port = 3306
# server_id = .....
bind-address = 127.0.0.1

3.修改相应文件配置项后,运行mysqld –remove

输出: “service sucessfully removed”

4.mysqld –defaults-file=my-default.ini –initialize-insecure

5.mysqld –install

输出:”service sucessfully installed”

6.net start mysql

输出:”MySQL 服务正在启动”“MySQL 服务已经启动成功”

7.现在是mysql服务开启啦,接下来我们用默认的账号登陆数据库,mysql -u root -p

输出: “Enter password”

密码默认没有,直接回车,就可以登陆成功。

8.现在可以对数据库进行一系列的操作啦。

6. 使用MySQL workbench更好的操作数据库

创建数据库

7. Laravel连接数据库

1. 修改数据库的配置文件./config/database.php,将数据库相应的信息修改成你的数据库的信息。

'mysql' => [
'driver' => 'mysql',
'host' => env('DB_HOST', 'localhost'),
'database' => env('DB_DATABASE', 'domitory'),
'username' => env('DB_USERNAME', 'root'),
'password' => env('DB_PASSWORD', ''),
'charset' => 'utf8',
'collation' => 'utf8_general_ci',
'prefix' => '',
'strict' => false,
'engine' => null,
],

2. 我们来通过一个表单来验证数据库是否连接成功

1.新建在./resources/views/下新建test/login.php


<html>
<head>
<title>login domitorytitle>
head>
<body>
<form method="post" action="/login/create">
<label>用户名:label>
<input type="text" name="name" />
<input type="submit" name="" value="提交">
form>>
body>
html>

2.使用php artisan make:controller UserIndexController 创建一个控制器,运行后在./app/http/下生成UserIndexController.php文件



namespace App\Http\Controllers;

use Illuminate\Http\Request;
use DB;
use App\Http\Requests;
use App\Http\Controllers\Controller;

class UserInsertController extends Controller
{

public function insertform(){
return view('stud_create');
}

public function insert(Request $request){
$name = $request->input('name');
DB::insert('insert into test (user_name) values(?)',[$name]);
echo "Record inserted successfully.
"
.$name;
}
}

将UserInsertController类中的内容复制进去。

3.配置路由


//登陆
Route::get('/login', function () {
return view('test/login');
});
Route::post('login/create','UseraInsertController@insert');

4.感觉都配置好了,好像差不多了,但运行时可能会遇见一个错误

[PDOException]
SQLSTATE[HY000] [1045] Access denied for user ‘homestead’@’localhost’ (using password: YES)

这个问题解决:

修改lavarel中的.evn文件中的DB设置,设置成你自己的数据库信息

DB_HOST=127.0.0.1
DB_DATABASE=domitory
DB_USERNAME=root
DB_PASSWORD=''

运行过程中还会遇见一个问题:

PDOException could not find driver

总结一下OverStack上的解决方法:

找到php安装目录下的php.ini,将里面extension=php_pdo_mysql.dll和extension_dir = “ext”前面的逗号去掉,网上有说去掉php_pdo.dll的逗号,这个文件但在5.2之后的版本被去掉啦,可以忽略。

5.之后运行应该就可以成功啦,但值得注意的一个问题,如果你还不成功,检查应用运行的是什么模式,

Laravel development server started on http://localhost:8000/

此时你就要修改php.ini-development

修改后,记得重启应用。

总结:

搞了一天,关于laravel还有很多没有去尝试,接下来接着去探索。


推荐阅读
  • 知识图谱——机器大脑中的知识库
    本文介绍了知识图谱在机器大脑中的应用,以及搜索引擎在知识图谱方面的发展。以谷歌知识图谱为例,说明了知识图谱的智能化特点。通过搜索引擎用户可以获取更加智能化的答案,如搜索关键词"Marie Curie",会得到居里夫人的详细信息以及与之相关的历史人物。知识图谱的出现引起了搜索引擎行业的变革,不仅美国的微软必应,中国的百度、搜狗等搜索引擎公司也纷纷推出了自己的知识图谱。 ... [详细]
  • MACElasticsearch安装步骤及验证方法
    本文介绍了MACElasticsearch的安装步骤,包括下载ZIP文件、解压到安装目录、启动服务,并提供了验证启动是否成功的方法。同时,还介绍了安装elasticsearch-head插件的方法,以便于进行查询操作。 ... [详细]
  • 本文介绍了在Windows环境下如何配置php+apache环境,包括下载php7和apache2.4、安装vc2015运行时环境、启动php7和apache2.4等步骤。希望对需要搭建php7环境的读者有一定的参考价值。摘要长度为169字。 ... [详细]
  • 本文讨论了在使用PHP cURL发送POST请求时,请求体在node.js中没有定义的问题。作者尝试了多种解决方案,但仍然无法解决该问题。同时提供了当前PHP代码示例。 ... [详细]
  • 浅析Mysql数据回滚错误的解决方法_PHP教程:MYSQL的事务处理主要有两种方法。1、用begin,rollback,commit来实现begin开始一个事务rollback事 ... [详细]
  • Sublime Text通过快捷键在浏览器中预览文件
    2019独角兽企业重金招聘Python工程师标准首先说下,我的是SublimeText3,win10。ST有个插件ViewInBrowser可以在 ... [详细]
  • 本文介绍了如何使用PHP向系统日历中添加事件的方法,通过使用PHP技术可以实现自动添加事件的功能,从而实现全局通知系统和迅速记录工具的自动化。同时还提到了系统exchange自带的日历具有同步感的特点,以及使用web技术实现自动添加事件的优势。 ... [详细]
  • phpcomposer 那个中文镜像是不是凉了 ... [详细]
  • springboot项目引入jquery浏览器报404错误的解决办法
    本文介绍了在springboot项目中引入jquery时,可能会出现浏览器报404错误的问题,并提供了解决办法。问题可能是由于将jquery.js文件复制粘贴到错误的目录导致的,解决办法是将文件复制粘贴到正确的目录下。如果问题仍然存在,可能是其他原因导致的。 ... [详细]
  • 延迟注入工具(python)的SQL脚本
    本文介绍了一个延迟注入工具(python)的SQL脚本,包括使用urllib2、time、socket、threading、requests等模块实现延迟注入的方法。该工具可以通过构造特定的URL来进行注入测试,并通过延迟时间来判断注入是否成功。 ... [详细]
  • 本文介绍了Android中的assets目录和raw目录的共同点和区别,包括获取资源的方法、目录结构的限制以及列出资源的能力。同时,还解释了raw目录中资源文件生成的ID,并说明了这些目录的使用方法。 ... [详细]
  • 如何在php文件中添加图片?
    本文详细解答了如何在php文件中添加图片的问题,包括插入图片的代码、使用PHPword在载入模板中插入图片的方法,以及使用gd库生成不同类型的图像文件的示例。同时还介绍了如何生成一个正方形文件的步骤。希望对大家有所帮助。 ... [详细]
  • 本文介绍了如何使用PHP代码将表格导出为UTF8格式的Excel文件。首先,需要连接到数据库并获取表格的列名。然后,设置文件名和文件指针,并将内容写入文件。最后,设置响应头部,将文件作为附件下载。 ... [详细]
  • 本文介绍了OkHttp3的基本使用和特性,包括支持HTTP/2、连接池、GZIP压缩、缓存等功能。同时还提到了OkHttp3的适用平台和源码阅读计划。文章还介绍了OkHttp3的请求/响应API的设计和使用方式,包括阻塞式的同步请求和带回调的异步请求。 ... [详细]
  • Centos7搭建ELK(Elasticsearch、Logstash、Kibana)教程及注意事项
    本文介绍了在Centos7上搭建ELK(Elasticsearch、Logstash、Kibana)的详细步骤,包括下载安装包、安装Elasticsearch、创建用户、修改配置文件等。同时提供了使用华为镜像站下载安装包的方法,并强调了保证版本一致的重要性。 ... [详细]
author-avatar
岁月如风晓
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有