第一章 PHP mySQL

余生颓废 提交于 2019-11-29 05:01:41

一,服务器环境搭建

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接口显示学生信息。

 
 
 
 
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!