一,服务器环境搭建

1-1.Apache服务器。(端口号定义,http协议,开启和关闭)

服务器:

我们在浏览器浏览网页的时候,在地址栏中都会产生一个url。通过这个url,浏览器从互联网中找到一个网页并下载到当前浏览器中显示。那么这个网页从何而来呢?

从web服务器来。一个网站完成开发后,我们需要把网站上传到一个web服务器中,web服务器会产生一个url地址,用户通过这个地址,在浏览器的地址栏中输入这个url,就可以在互联网上访问这个网站了。

web服务器是什么呢?web服务器实际上就是一台互联网联通的计算机,计算机上保存了许多文档或者网站,可供联网的客户端访问。

目前最主流的三个Web服务器是Apache、 Nginx 、IIS

Apache、 Nginx 、IIS  :这三个指的是服务器运行环境。

1-2.webserver原理。

 

客户端浏览器向服务器发送一个http请求,请求通过应用层http携带请求的条件(数据),经过TCP与服务器的三次握手,确认连接成功后,向服务器发送数据包,服务器接收到数据所并通过解析处理后,向客户端返回数据包,客户端接收解析并将结果显示在页面。

1-3.集成环境安装。

这里使用wampserver集成环境

1-4.php运行环境介绍。

Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩充,将Perl/Python等解释器编译到服务器中。同时Apache音译为阿帕奇,是北美印第安人的一个部落,叫阿帕奇族,在美国的西南部。也是一个基金会的名称、一种武装直升机等等。(这段话摘自百度百科)

二,php基础

1、简介:    PHP 是 "PHP Hypertext Preprocessor" 的首字母缩略词    PHP 是一种被广泛使用的开源脚本语言    PHP 脚本在服务器上执行    PHP 没有成本,可供免费下载和使用     语法吸收了C,java,Perl等语言的特点,利于学习,使用广泛,主要适用于web开发领域

2、分界标示符(定界符)

php分界标示符表示确定php脚本的开始和结束位置,在php语言中有三种不同风格的分界

标示符可以让php代码嵌入到html代码中,分别如下

2-1,标准分界标示符<?php ?>

2-2,简写分界符<?  ?>

2-3,<%  %>

3,基本语法

PHP 变量

变量以 $ 符号开始,后面跟着变量的名称

变量名必须以字母或者下划线字符开始

变量名只能包含字母数字字符以及下划线(A-z、0-9 和 _ )

变量名不能包含空格

变量名是区分大小写的($y 和 $Y 是两个不同的变量)

如:$num = 5; $num1 = 6; $str = "string";

 
 
 
 
 

三,mySQL数据库

1-1. 数据库概念(数据库,表,主键)

DB的概念:

DB的全称是data base,即数据库的意思。数据库实际上就是一个文件集合,是一个存储数据的仓库,本质就是一个文件系统,数据库是按照特定的格式把数据存储起来,用户可以对存储的数据进行增删改查操作;

DBMS的概念

DBMS的全称是Database Management System,即数据库管理系统的意思,是一个软件,用来管理数据库文件的软件,用户可以访问DBMS对数据进行增删改查操作,常见DBMS有: MySQL、oracle、DB2、sqlite、sqlserver等

1-2. 数据结构;

未结构化的数据:

我叫xxx,性别男女,今年18岁了,家住---,

结构化的数据:如下图

 

列:id name age phone adress等为列

字段:每一列为一个字段

主键:用于表示唯一的一行,一般将id设置为主键。

1-3. 操作数据库;

创建数据库:CREATE DATABASE myDB;//myDB为数据库名称

创建数据表:

CREATETABLE`mydb`.`studentinfo`(`sid`INTNOTNULLAUTO_INCREMENT,`sname`VARCHAR(50)NOTNULL,`sex`VARCHAR(10)NOTNULL,`age`INTNOTNULL,PRIMARYKEY(`sid`))ENGINE= MyISAM;

插入一行数据:

INSERT INTO `studentinfo`(`sname`, `sex`, `age`) VALUES ("张三","男",18);

一次性插入多行:

INSERT INTO `studentinfo`(`sname`, `sex`, `age`) VALUES ("李四","男",19);

INSERT INTO `studentinfo`(`sname`, `sex`, `age`) VALUES ("王五","子",18);

INSERT INTO `studentinfo`(`sname`, `sex`, `age`) VALUES ("赵六","男",22);

修改:根据sid=1修改sname

UPDATE `studentinfo` SET `sname`="张三1" WHERE sid = 1;

删除一行:删除sid=2这一行

DELETE FROM `studentinfo` WHERE sid=2;

查询所有:

SELECT * FROM `studentinfo`;

查询sid=1这一行:

SELECT * FROM `studentinfo` WHERE sid=1;

查询sid=1这一行中的sname和sex字段

SELECT `sname`, `sex` FROM `studentinfo` WHERE sid = 1;

查询studentinfo表中的sname和sex字段的所有信息:

SELECT `sname`, `sex` FROM `studentinfo`;

四,php 生成动态网页。

 
 

五.php 链接mySql

1.连接数据源

$db = mysqli_connect("localhost","root","");

2.连接数据库

mysqli_select_db($db,"myDB");

3.设置字符编码

mysqli_query($db,"set names utf-8");

4.设置sql语句

$sql = "SELECT * FROM `studentinfo` WHERE sid=1";

5.执行sql语句

mysqli_query($db,$sql);

六,项目案例:学生管理系统   php + mySql (sql 语句增删改查)

需求分析:

项目结构:

 

工具文件public.php,封装链接数据源方法,头信息的字符编码设置

 

1.注册页面:register.html

页面输入用户名,密码,点击注册按钮,向后台register.php发送请求

 

2.接口文件:register.php

接收register.html请求过来的用户名和密码,并将用户名和密码保存在数据库中,保存成功,即为注册成功,注册成功后跳转到登录页面login.html进行登录操作

保存失败,为注册失败,跳转到register.html继续注册操作

 

3.登录页面:login.html

输入用户名和密码,点击登录按钮,向后台login.php接口发送登录请求。

 

4.接口文件:login.hph

接收从页面发送过来的请求;

根据发送过来的用户名向数据库中查询该条数据,如果查询到一条数据,说明用户名存在,用户名存在时,将密码与查询到的该条数据中的密码对比,

如果匹配,说明登录成功,跳转到到学生信息接口studentInfo.php;

如果不匹配,说明密码不正确,跳转到登录页重新登录

根据发送过来的用户名向数据库中查询该条数据,如果没有查询到一条数据即结果为空时,说明用户名有误,跳转到登录页重新登录 。

 

5.接口文件:studentInfo.php;

在数据库中查询studentinfo表,查询所有学生信息,并将数据用表格的方式动态显示在页面。,其中最后一列需要添加一个修改和删除的a标签,对其点击会执行修改或删除操作,生成一个单独的a标签,该标签点击时进行添加学生信息操作。

 

6.删除接口:delete.php

在studentInfo.php生成的页面中,点击a标签,发送删除请求到接口delete.php中,请求中携带了一个id字段,字段为当前学生信息对应的id。

接口中招收id字段,根据该字段到数据库中删除对应的该条信息,

结果返回1说明删除成功,跳转到studentInfo.php接口继续显示学生信息。

返回空说明删除失败,跳转到studentInfo.php接口继续显示学生信息。

 

7.修改页面:update.html

在studentInfo.php接口生成的页面中,点击修改的a标签,发送修改请求到接口update.html中,请求中携带了一个该条所有学生信息字段,这些字段的信息都要默认显示在页面中。

获取url中的查询串信息,将信息分别显示在对应的文本框中,页面操作对想要修改的字段进行修改后,点击修改按钮,向update.php接口发送修改请求。

 

8.修改接口:update.php

接收update.html发送过来的请求,获取对应的字体信息,根据发送过来的id字段向数据库进行修改操作,执行修改语句后返回1说明修改成功,跳转到studentInfo.php接口显示学生信息,返回空说明修改失败,跳转到studentInfo.php接口显示学生信息;

 

9.添加学生信息页面:insertInfo.html

studentInfo.php接口显示的页面中点击添加a标签,跳转到insertInfo.html中,填写学生信息表,点击添加按钮,向接口insertInfo.php发送请求。

 

10.接口文件:insertInfo.php

接收页面请求过来的数据,将数据sql操作,插入到数据库中。执行sql语句后返回1说明信息添加成功,跳转到studentInfo.php接口显示学生信息,返回空,也要跳转到studentInfo.php接口显示学生信息。

 
 
 
 

第一章 PHP mySQL的更多相关文章

  1. 第一章 初识Mysql

    Mysql是一个开放源代码的数据库管理系统(DBMS),它是由MySQL AB 公司开发.发布并支持的. 登录 -- mysql #本地登录,默认用户root,空密码,用户为root@127.0.0. ...

  2. 第一章:mysql的介绍与安装

    什么是数据库管理系统 1)管理数据(增删改查) 2)存储数据 数据库管理系统的分类 1)关系型数据库(rdbms) 典型产品:mysql,oracle,mariadb,mssql(sqlserver) ...

  3. 【第一章】MySQL数据概述

    安装部署 备份恢复主备复制读写分离HA架构分布式数据库压力测试性能优化自动化运维 ==数据的存储方式1. 人工管理阶段2. 文件系统阶段3. 数据库系统管理阶段 ==数据库技术构成1. 数据库系统 D ...

  4. 《高性能mysql》笔记(第一章,mysql的架构与历史)

    mysql的服务器逻辑架构图如下: 目前工作用的5.5版本,5.5版本开始mysql开始将innoDB作为默认的存储引擎,innoDB的表是基于聚簇索引建立的. mysql的存储引擎锁管理非常重要,在 ...

  5. 第一章 初识MySQL(待续)

    ···········

  6. 第一章 数据库概述、MySQL的安装和配置

      第一章 数据库概述.MySQL的安装和配置   1.为什么要使用数据库 最早是纸质文件来存储数据 缺点:不易保存,占用空间大 计算机出现以后,采用软件来进行保存(excel) 缺点:容易损坏 文件 ...

  7. 《Mysql 公司职员学习篇》 第一章 小A的烦恼

    第一章  小A的烦恼 ----- 为什么学习数据库 和 如何选择数据库 小A是某公司的职员,公司数据部的员工,平常的大小工作,完全离不开EXCELL,而最近小A却越来越苦恼,不由的向好朋友小Y吐槽.小 ...

  8. Mysql必知必会 第一章 了解SQL

    第一章 了解SQL 1.1 数据库基础 1.1.1 什么是数据库 数据库的定义:保存有组织的数据的容器 数据库软件不是数据库,而是DBMS 1.1.2 表 表(Table)的定义:某种特定类型数据的结 ...

  9. 高性能MySQL(第4版) 第一章 MySQL架构 读书笔记

    这本书去年11月出的,今年中文版也出了,并且直接上了微信读书,之后有空就读一读,分享下读书笔记~ 原文内容比较充实,建议有时间可以读一下原文. 第一章主要是个概览. MySQL的逻辑架构 默认情况下, ...

随机推荐

  1. 008-centos6.5搭建web服务【nginx-tomcat8-jre8】

    一.机器配置 yum install vim 1.1.Linux最大进程以及打开文件数 ulimit -n和-u可以查看linux的最大进程数和最大文件打开数. ulimit -a 展示所有 临时方法 ...

  2. 小D课堂 - 新版本微服务springcloud+Docker教程_6-05 高级篇幅之高并发情况下

    笔记 5.高级篇幅之高并发情况下接口限流特技         简介:谷歌guava框架介绍,网关限流使用 1.nginx层限流 2.网关层限流 开始 mysql最大的连接数就是3千多.如果想把应用搞好 ...

  3. openstack部署glance

    一.建立glance数据库并且给权限设置第三方登录 mysql -uroot -p0330 CREATE DATABASE glance; GRANT ALL PRIVILEGES ON glance ...

  4. Attention机制在深度学习推荐算法中的应用(转载)

    AFM:Attentional Factorization Machines: Learning the Weight of Feature Interactions via Attention Ne ...

  5. 1. hadoop使用启动命令时报错之分析解决

    今天在学习hadoop启动命令的时候,先jps看了下,发现namenode.datanode都开着,所以想要先停止这些服务,结果输入命令后报错:“WARN util.NativeCodeLoader: ...

  6. 【笔记】7天玩转容器&CKA管理员实训

    第一部分 day1,容器基础知识介绍 安装 apt-get install docker-engine [root@cce-7day-fudonghai-24106 01CNL]# docker -v ...

  7. python之selenium元素定位方法

    前提: 大家好,今天我们来学习一下selenium,今天主要讲解selenium定位元素的方法,希望对大家有所帮助! 内容: 一,selenium定位元素 selenium提供了8种方法: 1.id ...

  8. 如何查看linux系统安装时间

    第一种方法: 先查看系统盘挂到哪个分区上,然后用 dumpe2fs  查看这个磁盘分区 创建的时间,即可查出此 服务器 系统安装的时间.() # dumpe2fs /dev/sda3|grep -i ...

  9. C#对IQueryable<T>、IEnumerable<T>的扩展方法

    #region IQueryable<T>的扩展方法 #region 根据第三方条件是否为真是否执行指定条件的查询 /// <summary> /// 根据第三方条件是否为真是 ...

  10. 调用存储在session属性里的东西

    将对象放在session里面 request.getSession().setAttribute("username", username); //放到会话里 永EL表达式调用 $ ...