zoukankan      html  css  js  c++  java
  • PHP连接数据库

    今天学习了在PHP中访问数据库,主要有两种方法:

    //方式一:已经过时
    //1.造一个连接(建立通道)
    $db = mysql_connect("localhost","root","");
    //2.选择要操作那个数据库
    mysql_select_db("mydb",$db);
    //3.写sql语句
    $sql="select * from Info";
    //4.执行sql语句,返回结果集
    $result = mysql_query($sql);
    //5.从结果集中取数据(取一行数据)
    $row = mysql_fetch_row($result);
    //都取出来用while循环
    while($row = mysql_fetch_row($result))
    {
        
    }

    //方式二:面向对象的方式
    //1.造一个连接对象
    $db = new MySQLi("localhost","root","密码","mydb");
    //2.判断连接是否出错
    //判断方法一:
    if(mysqli_connect_error())
    {
        exit();
    }
    //判断方法二:
    !mysqli_connect_error() or die("连接失败!");
    
    //3.写SQL语句
    $sql = "select * from Info";//若SQL语句为增删改,则不用取其中的数据,直接查看$result的值即可,执行成功返回true,失败返回false
    //4.执行SQL语句,执行成功返回结果集对象;执行失败,返回false
    $result = $db->query($sql);
    //5.从结果集中读取数据
    //读取方式一:
    if($result)
    {
        var_dump($result->fetch_row());   //返回一行数据的数组(索引数组)
        while($row = $result->fetch_row())  //返回所有数据
        {
            var_dump($row);
        }
    }
    //读取方式二:
    if($result)
    {
        var_dump($result->fetch_assoc());//返回一行数据的数组(关联数组)
    }
    //读取方式三:
    if($result)
    {
        var_dump($result->fetch_all());//返回所有数据的二维数组
    }
    //读取方式四:
    if($result)
    {
        var_dump($result->fetch_object());//返回一行数据(对象)
    }

    例子1:把Nation表显示在一个下拉列表里

    //1.造链接对象
    $db = new MySQLi("localhost","root","","mydb");
    //2.判断是否出错
    !mysqli_connect_error() or die("连接失败!");
    //3.写SQL语句
    $sql="select * from Nation";
    //4.执行SQL语句
    $result = $db->query($sql);
    //5.取数据
    if($result)
    {
        $attr = $result->fetch_all();
        echo "<select>";
        foreach($attr as $v)
        {
            echo "<option value='{$v[0]}'>{$v[1]}</option>";
        }
        echo "</select>";
    }

    例子2:把Info表查出来,用表格的形式显示出来

    $db = new MySQLi("localhost","root","","mydb");
    !mysqli_connect_error() or die ("连接失败!");
    $sql="select * from Info,Nation where Info.Nation=Nation.Code";
    $result = $db->query($sql);
    if($result)
    {
        $attr = $result->fetch_all();
        //var_dump($attr);
        echo "<table border='1' cellpadding='0' cellspacing='0' align='center' width='100%'>";
        echo "<tr><td>代号</td><td>姓名</td><td>性别</td><td>国籍</td><td>出生年月</td></tr>";
        foreach($attr as $v)
        {
            echo "<tr><td>{$v[0]}</td><td>{$v[1]}</td><td>{$v[2]}</td><td>{$v[6]}</td><td>{$v[4]}</td></tr>";
        } 
        echo "</table>";
    }
  • 相关阅读:
    Go-结构体,结构体指针和方法
    jpa报错object references an unsaved transient instance
    vue的$nextTick
    springboot里面的缓存注解
    X linux上安装sql developer
    X Oracle中RegExp_Like 正则表达式基本用法
    X Linux 安装MySql启动Can't locate Data/Dumper.pm in @INC
    X Centos7下NFS服务器搭建及客户端连接配置
    X grid安装前检查报PRVE-0426:/dev/shm less than the require
    1743. 从相邻元素对还原数组 力扣每日一题2021/7/25
  • 原文地址:https://www.cnblogs.com/Itwonderful/p/5454752.html
Copyright © 2011-2022 走看看