PHP与Mysql关系

  [复制链接]

2081

主题

2095

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35781
admin 发表于 2021-5-29 13:49:36
25395 100
  X9 {! T1 V6 f7 P+ U  z4 Z% Q- z
课程目录
; g! [( ?4 h2 S: x- l; E/ q) B/ f, \2 c
" ]2 x% \  u; B! ^* C" I5 A第一部分:我的应用工具。
+ M1 o* `8 w! w
8 p5 z: M' ^* `: j6 M# Y! |0 y       
# b( h* O5 g3 A  编辑器:sublime text3.
. @9 \) {4 R: F: B* }: O, k* a' j6 ?/ [% v- w8 }( \
          PHPstudy:该程序包集成最新的Apache+PHP+MySQL+phpMyAdmin,一次忄生安装,无须配置即可使用,是非常方便、好用的PHP调试环境。你不需要再单独下载安装php、mysql、appche,简单方便。
* S8 a2 ~+ p1 Y0 K$ x0 _; f) a5 t. J* S. n4 t- H
        首先认识以下phpstudy:& B# e' h# Z) B1 [

. j+ ^2 ]* I' D  \3 r
* f5 j3 u  B: v2 ]# {" }# U       
: ]# z2 Q% O+ E4 v3 a2 x4 Uphpstudy应用程序logo.png
  m/ J: F5 I1 ]; N  r' w3 O7 h; s1 h) g1 P& @
        4.png
' b4 _- g) D/ ]" A1 @9 E4 |! @1 G0 G  n* s+ h
) F+ l- V- H- _, @
       
9 S9 v8 q  |: j* |点击上图中的“MySQL管理器”,选择MySQL-Front 9 W3 f, A9 ?8 E8 U# W

5 J+ Q& Y7 [0 y% V        5.png出现如下界面:
# y# @$ r0 |. U+ ?: s: ~8 B! j6 B! i0 i' d9 e
        打开之后就进入到正式的数据库界面。 2 E5 t7 Q6 a+ k" L8 N7 I$ [7 X' D
, a6 {2 x- m6 p" X, u, w
        6.png * d, V( I4 ^  x, F2 {1 A% b' N2 I- g
  \! ^) k' w( r0 h6 W# V
        这里只是让大家见识以下mysql,后面会讲它的具体操作。7 n  e8 o' c* z$ ^: B' [- h
0 L$ f' D, G. j% y2 F, E% x

6 G/ D  i" h: t# p       
1 ?8 V! V$ C& S; r# {" t, X这一部分,我所出现的主要问题就是打开图5中的localhost时出现连接不上mysql的问题,实在没有办法才选择重装phpstudy。
+ E# W5 i) T7 e2 S" h3 y  S( r
" W& `9 d  s; Z6 a! j% J
       
  b% V; _0 A2 ]2 H, o6 u" k2 ^3 |第二部分:理解php、apache 、mysql之间的关系。/ B7 c9 X3 i1 X) g% K+ _. i
$ K# u" ]4 I. O: E. v$ A* u% X4 ]
       
5 C# _% J! h$ @有一位顾客在一家网店上 **了一本书,网店店主收到需求后会去找厂家拿货,店主拿到货把货发给顾客。 ' ]" P7 k/ `* U
( v3 o( y& Z$ g" t
        流程图如下:
+ ?1 }( |5 \) A) ^
* P$ d( M, J& E+ }8 E& L8 d
3 q; s3 R, u- v# d       
/ n* O: H- L) T" {实例.jpg9 o) R1 C2 x/ @3 `+ }

1 |% l3 m5 h* Q        我们从上图得知,顾客和店主并不直接交流,而是通过店主来交换数据,店主尽提供沟通服务。php、apache、数据库三者之间的关系就像顾客、店主和厂家之间的关系。php需要某种数据,直接把请求发送给apache服务器,apache再把这种请求反馈给数据库,数据库取出响应的数据交给apache服务器,apache服务器再发送给php。
: o+ D0 I$ K) M( \$ n
9 v$ z# b0 m6 ^5 R: A: w7 ]        为什么php和数据库不能直接沟通,非得通过apache呢? 7 [6 n9 A4 S2 b0 Z, r6 T

, |' J4 g6 e/ h$ p        打个比方:php和数据库就好像两个不同国籍的人,前者来自中国,后者来自美国,语言不通连沟通都成问题,更别说做生意了。恰好有这么一个人叫apache,即懂中文又懂英语,把php的需求翻译成英文后告诉数据库,数据库取出相应的货物交给apache ,apache再交给php。 4 k0 r6 a4 a5 K: D' k6 T5 Z" y

& p3 D' ]/ k/ C0 p            php语言与数据库数据不能相互识别,需要通过apache来进行转换.
) _& L( \8 d% b5 _5 y" f/ R7 B9 o" [
        为什么apache不能即当服务器,又做数据库,这样少了一个环节不是更省事吗?
: s& [9 v! u! a& k3 V/ m
0 B# Y; E3 ~. `2 k- r5 p        这设计到一个分工合理忄生问题。 1 D3 T2 n2 \- ]2 t6 u
2 r, C3 x# _2 f) n# V
        如果把apache和数据库合并,就相当于apache既当店主又当厂家,会大大加深apache服务器工作量。数据少的时候apache还能够承受,数据大的时候,apache还要负担工厂仓库的运输和管理工作,最终效益说不定还会大大降低,倒不如把仓库运输和管理的工作交给工厂来做。
. p- c2 Y* {7 O2 z; r  N
, w9 @$ ]- K% m2 P4 }" [1 X/ r; E/ V0 ?2 \
        3 ?9 ^% s" |3 i0 O# G
第三部分:mysql数据库(database) 4 G, N2 d5 O- F5 O" F# ^

: F6 r% B7 R/ D* U7 W& v        世界上有很多中数据库,mysql是其中最流行的一种。
' T, v; D# `, {0 `& y9 ^
' }9 w2 Q  ^* ]+ P        MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活忄生。(mysql数据库相当于将商品分类后放到不同的仓库,每一个仓库都是一个小数据库,而工厂是一个大数据库。这样方便存取货物,如果不进行分类存放,很明显存储效率会大大降低)。0 F3 i2 J0 y1 L- u0 o% G
1 B+ W5 ]3 ^. d- C2 `
! r0 ^0 f9 O0 Q: M' r" W) [0 C
        ' U: ?. X1 a4 ]7 \" ]. ~
RDBMS即关系数据库管理系统(Relational Database Management System)的特点: 0 z! @6 t6 {4 q4 F
  C( G- l+ @% W; Q' p7 {
        1.数据以表格的形式出现 " t7 v' o. I4 \
1 S8 ^6 u" A) X  h! g, U& O" X. ~5 K
        2.每行为各种记录名称 - j" M" F5 R7 [; B  |* h' k8 G; B1 t

: a( ^' v3 I( Q% J+ U9 h        3.每列为记录名称所对应的数据域 , u: H5 M. F& E' C) B, O# _
! c0 F* R/ ]# F( n
        4.许多的行和列组成一张表单
$ t3 M* A( Q* ~! `9 ?$ c) J$ }6 E- {) s6 S' {1 c
        5.若干的表单组成database
4 ], k. t. `, m; n  x" @/ U  G6 N- d" \% N$ z- j. P% D% d" C3 ?5 t, f9 [
# \* }! J& g3 I& M0 W% N
       
1 v3 F5 _0 G8 c! i+ j第三部分:利用php操作mysql数据库; J) ]1 V1 Z$ |( a/ v, C
/ M0 Z0 ]6 k1 R4 _* j0 R0 N( K
       
! h0 P7 I' K' A  O' z4 `1.使用php脚本连接数据库; \! }4 O; J- V: ^# O
: r) Q0 Q7 l* x, Q- _2 t! X
       
9 d1 D& I8 h/ {6 [0 y8 ]/ l* ^PHP 提供了 mysql_connect() 函数来连接数据库。该函数有5个参数,一般我们只用到前面3个。# _# k) _- }% p8 B2 z! Z) P7 Q
5 m5 J4 _$ F: @

4 a7 b% V) `+ e          I# [! k) N2 t3 y5 u8 l
这里你也许会问,php可以连接数据库那appache干什么去了。% Z9 _. p' m6 Y! l2 R
这里说明一下,apache是一个服务器,其构筑了一个php和数据库可以沟通的环境.php和数据库这两个讲不同语言的人打电话,通过apache这个同声翻译系统进行沟通, }- o5 P( Q6 |% N% A2 k; |) N2 V! r
% ]' r! x  H7 y
        0 \7 |1 H! T8 ~7 h3 ]4 F2 ~
       
% ?( g: `( R; }( K" i* d1
$ q. X8 g$ `# m" g  K) s" I4 e/ K
% x4 u' a, |) k- {          E: o, p$ D" M3 g  p1 z% b
2
% e- r4 {7 s3 I7 q% A# n  R& b) s- a' }+ u8 Z
       
! R0 Z2 ~% [1 M- |        * t( X4 `6 q. A9 F9 p7 q
. server 规定要连接的服务器。可以包括端口号,例如 “hostname:port”,或者到本地套接字的路径,例如对于 localhost 的 “:/path/to/socket”。 1 J; P/ p. l1 K

' H2 C' `$ y8 a) q- N        如果 PHP 指令 mysql.default_host 未定义(默认情况),则默认值是 ‘localhost:3306’。 - H+ c; i* u' R$ p

7 s8 Q& ~: G; A' T. a. W% t* w        . user 用户名。默认值是服务器进程所有者的用户名。
& I/ j7 `6 n# [7 a, e4 O6 J# c. q( @9 F( {8 Q% x9 ^$ [4 C1 p
        . password 密码。默认值是空密码。
: x1 x; l3 z$ ?0 e, a
5 C( U( I( p, e/ V4 |
1 B6 J. h6 s6 V/ r        ' O) P- f+ T' j( S: M! }
php mysql_close 用来断开与mysql数据库的联系。一般情况下脚本运行完后会自动断开联系,所以这句也可以不写。不过, mysql_close() 不会关闭由 mysql_pconnect() 建立的持久连接。 4 K0 v+ e+ H- t/ W) v
. n& T. |4 d! j, T
        连接数据库:2 A9 c, F* X  p4 w& n& R
) `( f# `/ T& }0 @# _8 p3 C: a) i

: i3 d2 f2 N/ h9 e" S# ~& X4 s3 Y       
: }; ^3 I3 b6 v4 d! c% L<?php
) d4 I4 X1 @+ _header("content-type:text/html;charset=utf-8");; W: }! E: Y$ T" Z  _
$servername = "127.0.0.1";//服务器主机地址1 A; ]" p$ l  u% F1 d& O0 t9 ~
$username = "root";//访问数据库的用户名
( K" a/ [+ M1 [; B $password = "root";//访问数据库的密码) L/ a/ a- \- ?! z! W$ W
//phpstudy的mysql有一个默认用户名(root)和密码(root)1 l) G- W9 e5 Y0 j) ^" {6 S
3 z8 |3 s$ \  t2 v3 h
// 创建连接* n4 ]0 G% h! x5 P3 I7 l
$conn = mysql_connect($servername, $username,$password);/ {0 l0 V" p/ P
6 \3 a0 s* ]- U2 G. y
// 检测连接
6 H0 F; f; ]- n% [: Iif (!$conn) {
. s8 {5 m' v1 z5 H) j    die("Connection failed: " . mysql_connect_error());//die()输出一条消息,然后断开6 m+ g+ o$ H5 M6 |1 z3 f1 {5 ?
连接。
1 S3 V. N5 U0 _! v) F}
0 a+ _4 S7 G4 F  l1 {7 Decho "连接成功";$ i3 E7 x' B# s2 n" H
mysql_close($conn);//关闭连接。+ a7 ]1 J: l" u% o" E* K% t
?>6 J6 A0 z4 J; u

3 R9 J" }* c# S  N       
) {7 G/ |( l+ q5 e        8 {& O& f% k$ e% I, y0 J( u
+ l$ a; p5 T( x0 P" L( P

" D. r! ?9 x- U- U2 \        0 \8 x% F# ~( S( X3 y* P4 p8 u! W* |

0 N# J0 P2 o1 x. k% t' w0 E
+ O. D" Z7 z7 J; k7 ?" Q' j, Z2 S) [       
5 X3 ~, ?0 _2 }, H1 F7 a
2 _( U  {  t) {7 D5 K) B: L, ~3 M# o  |) ]
        & b, A8 `  ]1 b2 d. Y
       
, D' S0 x" N; T0 a在数据表中的显示如下:
+ v! e8 c7 n7 m- c, b$ T1 U% A
) f& }( u$ m. Z2 F4 }/ M- h# J) K% [# U( d; C/ Y
       
: _8 e5 ^) D+ U3 H2 J5 J* e14.png
4 K1 e/ b2 T( O+ I0 X  F
/ G* Z+ R* t% d( S( k4 r& a
* x& z# I* @; Q' ]        * A1 M6 m! y1 L& P/ `
这里要注意对象浏览器显示的表中的标题行,规定了数据的类型以及其它属忄生。$ f4 a2 J0 e* X* D
- L- e% v+ e5 m+ U2 m  R* u
: g# _7 p) h3 y
        ) J5 O* }1 X& e% ^7 r0 N% I0 T
14-1.png 1 B; b3 O- r) n1 ?6 L

& V' g  m5 c( W5 `6 y6 ], d9 F- ?        上图是具体的数据图表。
6 v# J( ]" ?+ C7 Z: ]7 r& V
7 x5 v) f8 g7 G        下面我们来看具体的代码:
& b8 j' N$ o# o5 U/ V) u! T5 T4 ^0 Y! ~- t, C6 e8 `  X1 t5 R
$ E4 q) r3 f1 O) j7 h$ R) j
          s. U1 o0 a  r9 n/ e* `. p
在 PHP 早起版本中我们使用 MySQL 扩展。但该扩展在 2012 年开始不建议使用。取而代之的是mysqli扩展和PDO,个人使用的是mysqli扩展。mysqli扩展是mysql扩展的延伸,使用起来两者并没有什么差别,不过前者比后者更强大。下面使用的是mysqli面向过程(它还有一种面向对象的编码方式)的编码方式操作mysql,大家可以对比一下它同上面的mysql扩展编码方式的区别。: n2 w7 n; }2 p0 x' o; _

7 s$ X* y- \4 A2 ~; \& O8 w& R0 m1 e- E5 [# I: _
          D8 `( X, k( y$ m
18.png
+ q0 E! K: d0 a% d
3 v" E+ O! j: Q; E$ O  E% F3 f
% Z% c, R1 ?5 Y% E5 D& \. {, T# G; @       
- q* G% k2 b9 k, v& e- \19.png1 }  r# S- P2 W. b1 d" g! G

  Z- p+ q' e9 c* C. G7 Q( F3 E6 `0 t5 S+ E
        5 R, ?' W& q0 L8 F
AUTO INCREMENT - 设置 MySQL 字段的值在新增记录时每次自动增长 1
& {4 `$ N% ^: W; l% k( ^7 X
! f- K/ L- }2 o; ^5 A& e! m# Q! r& ?        PRIMARY KEY - 设置数据表中每条记录的唯一标识。 通常列的 PRIMARY KEY 设置为 ID 数值,与 AUTO_INCREMENT 一起使用。每个表都应该有一个主键(本列为 “zhubajie_t” 列),主键必须包含唯一的值。(这里大家可能不太理解,不过到后面)& n  v9 I# N3 E$ g' |0 f& @; N# v
& u# _5 a  S+ C

) N0 U/ Z( `! a. n  s* ?! Q       
3 A5 h9 d7 j6 l) ~  }1 v6 H3 N" G. n+ h, L
               
2 i0 ]3 M  B8 c( _  Z; xNOT NULL - 每一行都必须含有值(不能为空),null 值是不允许的。
1 E% ?, M1 _/ x$ l9 @# N: `9 I4 s4 ?; v% G: B# j6 U. [5 y/ ^/ [  m$ G
                DEFAULT value - 设置默认值
& J% M8 U9 ]9 W. l% S' g* i6 i
6 [7 C. I8 I4 f2 v+ K6 a+ Z! K! G                UNSIGNED - 使用无符号数值类型,0 及正数
! L3 S, y( g. ^1 ?; G
# b: t2 k0 i9 z) d' Z" k/ e                上面三种属忄生同指定列的数据类型一样都可以添加给列。(这里好好理解一下)。
3 i1 k. _. o, H
+ G& L" [9 y$ x9 C8 d
  ~% R5 G0 B. S; p       
! T( i( i, b7 x: k9 f% @0 M2 Z3 w; ~$ s& Q
       
' ]3 d+ h4 t( r5 e$ H1 O2 K6、删除表数据7 E9 G3 K0 E6 i3 ~
% U8 G: H5 L" O) E7 w; G: O
        8 K$ ~: T+ g6 m, g
20.png
3 h! C( l; R- m# w. o5 O* u1 I
6 o! T! i/ \" e: l3 {资源存放>百度网盘
: {$ X$ y9 D) ^% p2 u  Y  L( ]% S) t1 T) U% b" g, K
下载地址4 {% s; q& L1 b) ~- m8 X0 }
游客,如果您要查看本帖隐藏内容请回复
' `5 F9 A+ W* T2 `- t! ?# O
VIP会员全站免金币
6 h1 k# D3 n# N. lIT直通车已为全国各地程序员提供上千G课程资源1 z' E3 B. V7 D; d; v" y
如您需要购买本站VIP会员,请点击「开通VIP」享受全站资源免金币无限制下载!& \1 \0 g) v3 f: @5 K" g

4 I0 H" x* A4 V* R1 `失效反馈  a+ F/ o6 l5 L) P. Y6 n
IT直通车所有资源都存放在自己注册的百度网盘,失效可修复,确保持续可用1 k: B1 u4 `5 ]
如您需要的资源链接提示失效,请尽情反馈给我们,将在收到反馈后尽快修复「点击反馈3 `1 Q/ B8 ^: X- H2 g& b
* h% C0 }* K- |& g* t' [1 \
获得帮助
- X( n& N+ M# I* r6 A" V& V7 z; N需要帮助吗?点击网站右侧在线客服,7X12小时在线!
; S2 B) ~9 a7 P& _  a; A$ W/ ]" t4 m, T- L; j8 }$ E
回复

使用道具 举报

十二音阶囤 发表于 2021-5-29 13:53:06
感谢~~~~~~~~~~~~
回复

使用道具 举报

护身马甲上阵兜 发表于 2021-5-29 19:02:43
回帖看看下载地址
回复

使用道具 举报

123457468 发表于 2021-6-1 15:26:21
<<HP与Mysql关系>>[复制链接]
回复

使用道具 举报

馥琳 发表于 2021-6-2 16:22:03
1111111111
回复

使用道具 举报

hknuhp852859 发表于 2021-6-3 22:49:06
祝IT直通车越办越好
回复

使用道具 举报

冀苍鸾 发表于 2021-6-5 09:51:27
感谢~~~~~~~~~~~~
回复

使用道具 举报

紫色214 发表于 2021-6-5 14:17:11 来自手机
谢谢分享~~~~~
回复

使用道具 举报

我就是但丁徊 发表于 2021-6-5 15:47:27
收割一波好资源
回复

使用道具 举报

我心永恒760 发表于 2021-6-7 14:53:46
6666666666666
回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 AD:IT直通车VIP会员全站免金币下载
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

遇到问题联系客服

在线客服QQ 488090338 

如您充值或开通会员后资源无法下载

本站有售后服务,联系客服修复即可

[联系客服]-[会员充值]

更多课程

关于本站

VIP介绍 加入我们

售后服务

QQ客服 Email邮件

网站声明

IT直通车(www.itztc.com)是一个IT视频教程、软件、书籍资源整合分享平台
站内所有资源均来自于互联网,版权归属原资源作者,如无意侵犯您的版权,请联系我们删除处理。

Archiver|手机版|小黑屋|IT学习网 |网站地图

Powered by Discuz! X3.4  © 2001-2013 IT直通车 ICP证:粤ICP备13026616号 增值电信业务经营许可证:粤B2-20140196

返回顶部 返回列表