热门标签 | 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还有很多没有去尝试,接下来接着去探索。


推荐阅读
  • 您的数据库配置是否安全?DBSAT工具助您一臂之力!
    本文探讨了Oracle提供的免费工具DBSAT,该工具能够有效协助用户检测和优化数据库配置的安全性。通过全面的分析和报告,DBSAT帮助用户识别潜在的安全漏洞,并提供针对性的改进建议,确保数据库系统的稳定性和安全性。 ... [详细]
  • Web开发框架概览:Java与JavaScript技术及框架综述
    Web开发涉及服务器端和客户端的协同工作。在服务器端,Java是一种优秀的编程语言,适用于构建各种功能模块,如通过Servlet实现特定服务。客户端则主要依赖HTML进行内容展示,同时借助JavaScript增强交互性和动态效果。此外,现代Web开发还广泛使用各种框架和库,如Spring Boot、React和Vue.js,以提高开发效率和应用性能。 ... [详细]
  • 在 Ubuntu 中遇到 Samba 服务器故障时,尝试卸载并重新安装 Samba 发现配置文件未重新生成。本文介绍了解决该问题的方法。 ... [详细]
  • Android开发技巧:使用IconFont减少应用体积
    本文介绍如何在Android应用中使用IconFont来显示图标,从而有效减少应用的体积。 ... [详细]
  • 本文探讨了在不解压的情况下,如何高效地从包含文本文件的.gz压缩文件中查找特定字符串的方法。通过利用特定的工具和技术,可以在保持文件压缩状态的同时,快速定位和检索所需信息,提高处理大规模数据集时的效率和性能。 ... [详细]
  • 高效批量文件重命名软件
    开发了一款基于Python的高效批量文件重命名软件,并集成了wxWidgets图形用户界面,使用cxfreeze将其打包为独立的可执行文件(exe)。该工具适用于需要频繁处理大量文件的用户,能够显著提高文件管理效率。详细使用说明包含在软件压缩包内。开发环境为Python 2.7和wxWidgets 3.0,运行环境要求兼容Windows系统。 ... [详细]
  • 深入解析Gradle中的Project核心组件
    在Gradle构建系统中,`Project` 是一个核心组件,扮演着至关重要的角色。通过使用 `./gradlew projects` 命令,可以清晰地列出当前项目结构中包含的所有子项目,这有助于开发者更好地理解和管理复杂的多模块项目。此外,`Project` 对象还提供了丰富的配置选项和生命周期管理功能,使得构建过程更加灵活高效。 ... [详细]
  • 成功实现Asp.Net MVC3网站与MongoDB数据库的高效集成
    我们成功地构建了一个基于Asp.NET MVC3框架的网站,并实现了与MongoDB数据库的高效集成。此次更新不仅完善了基本的创建和显示功能,还全面实现了数据的增删改查操作。在创建功能方面,我们修复了之前代码中的错误,确保每个属性都能正确生成。此外,我们还对数据模型进行了优化,以提高系统的性能和稳定性。 ... [详细]
  • Visual Studio Code (VSCode) 是一款功能强大的源代码编辑器,支持多种编程语言,具备丰富的扩展生态。本文将详细介绍如何在 macOS 上安装、配置并使用 VSCode。 ... [详细]
  • 微软推出Windows Terminal Preview v0.10
    微软近期发布了Windows Terminal Preview v0.10,用户可以在微软商店或GitHub上获取这一更新。该版本在2月份发布的v0.9基础上,新增了鼠标输入和复制Pane等功能。 ... [详细]
  • Ext JS MVC系列一:环境搭建与框架概览
    本文主要介绍了如何在项目中使用Ext JS 4作为前端框架,并详细讲解了Ext JS 4的MVC开发模式。文章将从项目目录结构、相关CSS和JS文件的引用以及MVC框架的整体认识三个方面进行总结。 ... [详细]
  • 本文介绍如何通过批处理(bat)命令调用360压缩软件来实现文件的解压和压缩操作。 ... [详细]
  • 开发日志:高效图片压缩与上传技术解析 ... [详细]
  • 在《Cocos2d-x学习笔记:基础概念解析与内存管理机制深入探讨》中,详细介绍了Cocos2d-x的基础概念,并深入分析了其内存管理机制。特别是针对Boost库引入的智能指针管理方法进行了详细的讲解,例如在处理鱼的运动过程中,可以通过编写自定义函数来动态计算角度变化,利用CallFunc回调机制实现高效的游戏逻辑控制。此外,文章还探讨了如何通过智能指针优化资源管理和避免内存泄漏,为开发者提供了实用的编程技巧和最佳实践。 ... [详细]
  • PHP 各版本对比:标准版与最新顶级版的详细分析 ... [详细]
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社区 版权所有