Во-первых, среда сервера для создания
1-1.Apache сервер. (Указать номер порта, протокол HTTP, открытие и закрытие)
Сервер:
Мы в браузере при просмотре веб-страниц, в результате чего URL в адресной строке будет. Через этот адрес, найти веб-браузер из Интернета и загрузить в отображаемой браузером. Тогда эта страница взялось?
С веб-сервера. После завершения разработки веб-сайта, мы должны быть загружены на сервер веб-сайта, веб-сервер генерирует адрес URL-адрес, пользователь через этот адрес, введите этот адрес в адресной строке вашего браузера, вы можете посетить этот сайт в Интернете ,
Что веб-сервер это? веб-сервер, на самом деле является компьютер Интернет-соединения, экономя много документа или веб-сайта на компьютерной сети для клиентского доступа.
Три наиболее основной веб-сервер Apache, Nginx, IIS
Apache, Nginx, IIS: три является серверной операционной среды.
1-2.webserver принцип.
![](https://upload-images.jianshu.io/upload_images/18577942-eadea3e8f3f466e9.png?imageMogr2/auto-orient/strip|imageView2/2/w/1200/format/webp)
Браузер клиента для отправки запроса HTTP на сервер, запрашивает условия (данные) провела в просьбе прикладного уровня HTTP, через квитирование TCP сервер трехходового подтверждающее соединение успешно, полученные данные на сервер передает пакет, сервер и по после того, как процесс анализа, вернулся в клиентский пакет данных, разборе клиент получает и отображает результат на этой странице.
1-3. Интегрированная среда установлена.
Используемые здесь термин WampServer интегрированной среды
1-4.php внедрение операционной среды.
Apache является номером один в мире использование программного обеспечения веб-сервера. Он может работать практически на любой компьютерной платформе широко используется из-за своей кросс-платформенной безопасности и широко используется, это одна из самых популярных программ веб-сервера. Это быстрый, надежный, и может быть расширена с помощью простой API, на Perl / Python и т.д. интерпретатора, встроенного в сервер. В то же время Apache транслитерации, как Apache, это североамериканский индейское племя, называемое семейство Apache, на юго-западе Соединенных Штатов. Это также название фундамента вертолетов и так далее. (Отрывок Baidu энциклопедия)
Во-вторых, PHP база
1. Введение: PHP является «PHP Hypertext Preprocessor» аббревиатура PHP с открытым исходным кодом язык сценариев PHP является широко используемым выполнением сценариев PHP на сервере бесплатно, доступен для бесплатного скачивания и использование грамматики поглощенного C, Java функции , такие как Perl язык, способствующие обучению, широко используется, в основном , применительно к сфере веб - разработки
2, граница идентификатор (разделитель)
Идентификатор PHP представляет собой границу, определяющую сценарий начала и конца PHP, есть три различных стиля разграничения на языке PHP
Php код позволяет идентификаторы, встроенные в HTML-коде, являются следующим
2-1, стандартные граничные идентификаторы <? Php?>
2-2, сокращенные разделители <??>
2-3, <%%>
3, базовая грамматика
PHP переменные
Переменные начинаются с символа $, за которым следует имя переменной
Имена переменных должны начинаться с буквы или символа подчеркивания
Имена переменных могут содержать только буквенно-цифровые символы и подчеркивание (Az, 0-9, и _)
Имена переменных не могут содержать пробелы
Имена переменных чувствительны к регистру (Y-$ и $ Y две разные переменные)
如: $ Num = 5; $ Num1 = 6; $ Ул = "строка";
![](https://upload-images.jianshu.io/upload_images/18577942-5ef76ed4ef01a583.png?imageMogr2/auto-orient/strip|imageView2/2/w/1200/format/webp)
![](https://upload-images.jianshu.io/upload_images/18577942-cadd521df6390a98.png?imageMogr2/auto-orient/strip|imageView2/2/w/1196/format/webp)
![](https://upload-images.jianshu.io/upload_images/18577942-0336362d6959825b.png?imageMogr2/auto-orient/strip|imageView2/2/w/1047/format/webp)
![](https://upload-images.jianshu.io/upload_images/18577942-50934c97ee8eade6.png?imageMogr2/auto-orient/strip|imageView2/2/w/848/format/webp)
![](https://upload-images.jianshu.io/upload_images/18577942-7d6fe1fd77806b61.png?imageMogr2/auto-orient/strip|imageView2/2/w/1200/format/webp)
Три, базы данных MySql
1-1. Концепция баз данных (базы данных, таблицы, первичные ключи)
DB понятия:
DB является полным именем базы данных, то есть означает базу данных. База данных фактически набор файлов хранится в хранилище данных, по существу, файловая система, база данных, в соответствии с конкретным форматом данных, хранимых, пользователь может добавлять, удалять, изменять сохраненную операцию поиска данных;
Понятие СУБД
DBMS的全称是Database Management System,即数据库管理系统的意思,是一个软件,用来管理数据库文件的软件,用户可以访问DBMS对数据进行增删改查操作,常见DBMS有: MySQL、oracle、DB2、sqlite、sqlserver等
1-2. 数据结构;
未结构化的数据:
我叫xxx,性别男女,今年18岁了,家住---,
结构化的数据:如下图
![](https://upload-images.jianshu.io/upload_images/18577942-e1d61f58c0bc3efd.png?imageMogr2/auto-orient/strip|imageView2/2/w/882/format/webp)
列: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 生成动态网页。
![](https://upload-images.jianshu.io/upload_images/18577942-3bdf00b94474b031.png?imageMogr2/auto-orient/strip|imageView2/2/w/1121/format/webp)
![](https://upload-images.jianshu.io/upload_images/18577942-b436807d4b476089.png?imageMogr2/auto-orient/strip|imageView2/2/w/1200/format/webp)
五.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 语句增删改查)
需求分析:
项目结构:
![](https://upload-images.jianshu.io/upload_images/18577942-011f09d922e5778d.png?imageMogr2/auto-orient/strip|imageView2/2/w/252/format/webp)
工具文件public.php,封装链接数据源方法,头信息的字符编码设置
![](https://upload-images.jianshu.io/upload_images/18577942-e71aa9e0d61b493f.png?imageMogr2/auto-orient/strip|imageView2/2/w/1115/format/webp)
1.注册页面:register.html
页面输入用户名,密码,点击注册按钮,向后台register.php发送请求
![](https://upload-images.jianshu.io/upload_images/18577942-018fa6837a51a423.png?imageMogr2/auto-orient/strip|imageView2/2/w/1200/format/webp)
2.接口文件:register.php
接收register.html请求过来的用户名和密码,并将用户名和密码保存在数据库中,保存成功,即为注册成功,注册成功后跳转到登录页面login.html进行登录操作
保存失败,为注册失败,跳转到register.html继续注册操作
![](https://upload-images.jianshu.io/upload_images/18577942-cbe1184554b21c4a.png?imageMogr2/auto-orient/strip|imageView2/2/w/1200/format/webp)
3.登录页面:login.html
输入用户名和密码,点击登录按钮,向后台login.php接口发送登录请求。
![](https://upload-images.jianshu.io/upload_images/18577942-7e94f820c38ddf30.png?imageMogr2/auto-orient/strip|imageView2/2/w/1200/format/webp)
4.接口文件:login.hph
接收从页面发送过来的请求;
根据发送过来的用户名向数据库中查询该条数据,如果查询到一条数据,说明用户名存在,用户名存在时,将密码与查询到的该条数据中的密码对比,
如果匹配,说明登录成功,跳转到到学生信息接口studentInfo.php;
如果不匹配,说明密码不正确,跳转到登录页重新登录
根据发送过来的用户名向数据库中查询该条数据,如果没有查询到一条数据即结果为空时,说明用户名有误,跳转到登录页重新登录 。
![](https://upload-images.jianshu.io/upload_images/18577942-8bfeb8d92ccfac1f.png?imageMogr2/auto-orient/strip|imageView2/2/w/1200/format/webp)
5.接口文件:studentInfo.php;
在数据库中查询studentinfo表,查询所有学生信息,并将数据用表格的方式动态显示在页面。,其中最后一列需要添加一个修改和删除的a标签,对其点击会执行修改或删除操作,生成一个单独的a标签,该标签点击时进行添加学生信息操作。
![](https://upload-images.jianshu.io/upload_images/18577942-f02fc3b2baa28bc3.png?imageMogr2/auto-orient/strip|imageView2/2/w/1200/format/webp)
6.删除接口:delete.php
在studentInfo.php生成的页面中,点击a标签,发送删除请求到接口delete.php中,请求中携带了一个id字段,字段为当前学生信息对应的id。
接口中招收id字段,根据该字段到数据库中删除对应的该条信息,
结果返回1说明删除成功,跳转到studentInfo.php接口继续显示学生信息。
返回空说明删除失败,跳转到studentInfo.php接口继续显示学生信息。
![](https://upload-images.jianshu.io/upload_images/18577942-02d225d4563291b3.png?imageMogr2/auto-orient/strip|imageView2/2/w/1200/format/webp)
7.修改页面:update.html
在studentInfo.php接口生成的页面中,点击修改的a标签,发送修改请求到接口update.html中,请求中携带了一个该条所有学生信息字段,这些字段的信息都要默认显示在页面中。
获取url中的查询串信息,将信息分别显示在对应的文本框中,页面操作对想要修改的字段进行修改后,点击修改按钮,向update.php接口发送修改请求。
![](https://upload-images.jianshu.io/upload_images/18577942-817a1687936ea9c3.png?imageMogr2/auto-orient/strip|imageView2/2/w/1200/format/webp)
8.修改接口:update.php
接收update.html发送过来的请求,获取对应的字体信息,根据发送过来的id字段向数据库进行修改操作,执行修改语句后返回1说明修改成功,跳转到studentInfo.php接口显示学生信息,返回空说明修改失败,跳转到studentInfo.php接口显示学生信息;
![](https://upload-images.jianshu.io/upload_images/18577942-c883d5b9a88bc783.png?imageMogr2/auto-orient/strip|imageView2/2/w/1200/format/webp)
9.添加学生信息页面:insertInfo.html
studentInfo.php接口显示的页面中点击添加a标签,跳转到insertInfo.html中,填写学生信息表,点击添加按钮,向接口insertInfo.php发送请求。
![](https://upload-images.jianshu.io/upload_images/18577942-94f8ea9a829442b1.png?imageMogr2/auto-orient/strip|imageView2/2/w/1200/format/webp)
10.接口文件:insertInfo.php
接收页面请求过来的数据,将数据sql操作,插入到数据库中。执行sql语句后返回1说明信息添加成功,跳转到studentInfo.php接口显示学生信息,返回空,也要跳转到studentInfo.php接口显示学生信息。
![](https://upload-images.jianshu.io/upload_images/18577942-9fb2b92d06f90af4.png?imageMogr2/auto-orient/strip|imageView2/2/w/1200/format/webp)