联系客服1
联系客服2

PHP与Mysql关系,全套视频教程学习资料通过百度云网盘下载

0
回复
312
查看
打印 上一主题 下一主题
[复制链接]
  • TA的每日心情
    开心
    2024-9-19 21:14
  • 签到天数: 757 天

    [LV.10]以坛为家III

    7335

    主题

    8751

    帖子

    131万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    1312677
    楼主
    发表于 2021-3-29 10:46:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

    资源详情






    详解php与mysql的关系



           
           
           
                    通过本章你能够学到什么?对数据库有一个更为直观的了解。2、利用php对数据库进行连接、创建、修改、插入等简单操作。

           
             

           
                    这篇文章的特点 
                    1、在学习过程中碰到的很多问题,我都记录下来,在这篇文章中给予了解决办法。对于初学者而言能够很好节约他们的事件,不用再像我耗费大量的时间查找资料,解决问题。 
                    2、有图有真相,让你能够更容易理解。 
                    3、绝不废话。

           
             

            第一部分:我的应用工具。
              编辑器:sublimetext3. 
              phpstudy:该程序包集成最新的Apache+PHP+MySQL+phpMyAdmin,一次忄生安装,无须配置即可使用,是非常方便、好用的PHP调试环境。你不需要再单独下载安装php、mysql、appche,简单方便。 
            首先认识以下phpstudy:

             
           

            点击上图中的“MySQL管理器”,选择MySQL-Front 
            出现如下界面: 
            打开之后就进入到正式的数据库界面。 
             
            这里只是让大家见识以下mysql,后面会讲它的具体操作。

            这一部分,我所出现的主要问题就是打开图5中的localhost时出现连接不上mysql的问题,实在没有办法才选择重装phpstudy。

            第二部分:理解php、apache、mysql之间的关系。
            有一位顾客在一家网店上**了一本书,网店店主收到需求后会去找厂家拿货,店主拿到货把货发给顾客。 
            流程图如下:

           
            我们从上图得知,顾客和店主并不直接交流,而是通过店主来交换数据,店主尽提供沟通服务。php、apache、数据库三者之间的关系就像顾客、店主和厂家之间的关系。php需要某种数据,直接把请求发送给apache服务器,apache再把这种请求反馈给数据库,数据库取出响应的数据交给apache服务器,apache服务器再发送给php。 
            为什么php和数据库不能直接沟通,非得通过apache呢? 
            打个比方:php和数据库就好像两个不同国籍的人,前者来自中国,后者来自美国,语言不通连沟通都成问题,更别说做生意了。恰好有这么一个人叫apache,即懂中文又懂英语,把php的需求翻译成英文后告诉数据库,数据库取出相应的货物交给apache,apache再交给php。 
                php语言与数据库数据不能相互识别,需要通过apache来进行转换. 
            为什么apache不能即当服务器,又做数据库,这样少了一个环节不是更省事吗? 
            这设计到一个分工合理忄生问题。 
            如果把apache和数据库合并,就相当于apache既当店主又当厂家,会大大加深apache服务器工作量。数据少的时候apache还能够承受,数据大的时候,apache还要负担工厂仓库的运输和管理工作,最终效益说不定还会大大降低,倒不如把仓库运输和管理的工作交给工厂来做。

            第三部分:mysql数据库(database) 
            世界上有很多中数据库,mysql是其中最流行的一种。 
            MySQL是一个关系型数据库管理系统,由瑞典MySQLAB公司开发,目前属于Oracle公司。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活忄生。(mysql数据库相当于将商品分类后放到不同的仓库,每一个仓库都是一个小数据库,而工厂是一个大数据库。这样方便存取货物,如果不进行分类存放,很明显存储效率会大大降低)。

            RDBMS即关系数据库管理系统(RelationalDatabaseManagementSystem)的特点: 
            1.数据以表格的形式出现 
            2.每行为各种记录名称 
            3.每列为记录名称所对应的数据域 
            4.许多的行和列组成一张表单 
            5.若干的表单组成database

            第三部分:利用php操作mysql数据库
            1.使用php脚本连接数据库
            PHP提供了mysql_connect()函数来连接数据库。该函数有5个参数,一般我们只用到前面3个。

            这里你也许会问,php可以连接数据库那appache干什么去了。
    这里说明一下,apache是一个服务器,其构筑了一个php和数据库可以沟通的环境.php和数据库这两个讲不同语言的人打电话,通过apache这个同声翻译系统进行沟通

           
            1
            2
           
            .server规定要连接的服务器。可以包括端口号,例如“hostname:port”,或者到本地套接字的路径,例如对于localhost的“:/path/to/socket”。 
            如果PHP指令mysql.default_host未定义(默认情况),则默认值是‘localhost:3306’。 
            .user用户名。默认值是服务器进程所有者的用户名。 
            .password密码。默认值是空密码。

            phpmysql_close用来断开与mysql数据库的联系。一般情况下脚本运行完后会自动断开联系,所以这句也可以不写。不过,mysql_close()不会关闭由mysql_pconnect()建立的持久连接。 
            连接数据库:

            <?php
    header("content-type:text/html;charset=utf-8");
    $servername="127.0.0.1";//服务器主机地址
    $username="root";//访问数据库的用户名
    $password="root";//访问数据库的密码
    //phpstudy的mysql有一个默认用户名(root)和密码(root)

    //创建连接
    $conn=mysql_connect($servername,$username,$password);

    //检测连接
    if(!$conn){
    die("Connectionfailed:".mysql_connect_error());//die()输出一条消息,然后断开
    连接。
    }
    echo"连接成功";
    mysql_close($conn);//关闭连接。
    ?>

           
             
             
             
           
            在数据表中的显示如下:

           

            这里要注意对象浏览器显示的表中的标题行,规定了数据的类型以及其它属忄生。

             
            上图是具体的数据图表。 
            下面我们来看具体的代码:

            在PHP早起版本中我们使用MySQL扩展。但该扩展在2012年开始不建议使用。取而代之的是mysqli扩展和PDO,个人使用的是mysqli扩展。mysqli扩展是mysql扩展的延伸,使用起来两者并没有什么差别,不过前者比后者更强大。下面使用的是mysqli面向过程(它还有一种面向对象的编码方式)的编码方式操作mysql,大家可以对比一下它同上面的mysql扩展编码方式的区别。

           

           

            AUTOINCREMENT-设置MySQL字段的值在新增记录时每次自动增长1 
            PRIMARYKEY-设置数据表中每条记录的唯一标识。通常列的PRIMARYKEY设置为ID数值,与AUTO_INCREMENT一起使用。每个表都应该有一个主键(本列为“zhubajie_t”列),主键必须包含唯一的值。(这里大家可能不太理解,不过到后面)

           
                    NOTNULL-每一行都必须含有值(不能为空),null值是不允许的。 
                    DEFAULTvalue-设置默认值 
                    UNSIGNED-使用无符号数值类型,0及正数 
                    上面三种属忄生同指定列的数据类型一样都可以添加给列。(这里好好理解一下)。

           
            6、删除表数据
           

           

           






    游客,如果您要查看本帖隐藏内容请回复
    收藏
    收藏0
    分享
    分享
    支持
    支持0
    反对
    反对0
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    学习课程!一站搞定!
    学途无忧VIP会员群

    973849140

    周一至周日9:00-23:00

    反馈建议

    1227072433@qq.com 在线QQ咨询

    扫描二维码关注我们

    学途无忧!为学习谋坦途,为会员谋福利!|网站地图