一、使用PHP查询MySQL数据库:

1.通过PHP来访问MySQL的步骤是:

  1. 连接到MySQL
  2. 选择操作的数据库
  3. 创建查询的字段
  4. 执行查询的语句
  5. 检索出结果并在网页上显示
  6. 断开与MySQL的连接

我们将依次完成这些操作,重要的是首先以安全的方式创建登陆的详细资料,以使的别人不容易访问你的数据库。

2.创建登陆文件:

许多用PHP创建的网站都包含了多个程序文件,这些文件需要访问MySQL,并需要登陆和密码信息,因此单独创建一个文件来存储这些信息,并将其放在任何需要 的地方。

<?php //login.php
$db_hostname = 'localhost';
$db_database = 'my_database';
$db_username = 'username';
$db_password = 'password';
?>

3.连接到MySQL数据库:

现在login.php文件已经创建并保存,可以通过require_once语句将它包含在任何需要访问数据的PHP文件中。

<?php
require_once 'login.php';
$db_server = mysql_connect($db_hostname,$db_username,$db_password);
if (!$db_server) die("Unable to connect to MySQL:" . mysql_error());
?>

mysql_connect()函数有三个参数:MySQL服务器的主机名、用户名和密码。运行成功后立即为服务器返回一个标识符,否则则返回FALSE。if ... die 如果$db_server不是TRUE将会退出PHP并返回一个错误信息。mysql()函数输出来自于最后依次调用MySQL函数的错误文本。

4.选择数据库:

成功连接上MySQL后,就可以选择要用到的数据库了。

<?php
mysql_select_db(db_database)
or die("Unable to select database:" . mysql_error());
?>

5.创建并执行查询语句:

使用mysl_query()函数从PHP传递一个查询语句到MySQL。

<?php
$query = "select * from mytable";
$result = mysql_query($query);
if (!$result) die ("Database access failed:" . mysql_error());
?>

mysql_query()函数查询成功的话返回一个包含一个用来提取查询结果的resource(资源),失败的话返回false。

6.获取结果:

一旦获取了从mysql_query()函数返回的资源,就可以用它来检索需要的数据。我们可以一行一行的获取,也可以一个一个的获取。

<?php
require_once() 'login.php');
$db_server = mysql_connect($db_hostname,$db_username,$db_password); if(!db_server) die ("Unable to connect to MySQL:" . mysql_error()); mysql_select_db($db_database) or die ("Unable to select database:" . mysql_error()); $query = "select * from calssics";
$result = mysql_query($query); if(!$result) die("Database access failed:" . mysql_error()); $rows = mysql_num_rows($result); for ($j = 0; $j < $rows; ++$j)
{
echo "Author: " . mysql_result($result,$j,'author') . <br />;
echo "Title: " . mysql_result($result,$j,'title') . <br />;
echo "Category: " . mysql_result($result,$j,'category') . <br />;
echo "Year: " . mysql_result($result,$j,'year') . <br />;
echo ISBN: " . mysql_result($result,$j,'isbn') . <br />;
}

mysql_num_rows()函数获取资源的行数,传递给变量$rows;然后使用mysql_resut()函数从每行中提取数据单元,这个函数的三个参数是:获取的资源、数据的行数和要提取的数据的列名。

除了这样一个一个的获取数据,我们还可以使用mysql_fetch_row()函数一行一行的获取数据:

<?php
for($j = 0; $j < rows; ++$j)
{
$row = mysql_fetch_row($result);
echo "Author" . $row[0] . "<br />";
echo "Title" . $row[0] . "<br />";
echo "Category" . $row[0] . "<br />";
echo "Year" . $row[0] . "<br />";
echo "ISBN" . $row[0] . "<br />";
}
?>

7.关闭连接

数据库用完后,使用mysql_close()函数将数据库连接关闭:

<?php
mysql_close($db_server);
?>

我们要给mysql_close()函数传送mysql_connect()函数的返回值。

使用PHP链接MySQL的更多相关文章

  1. PDO链接mysql学习笔记

    <?php //PDO链接mysql//dsn三种写法: //dsn01 $dsn = 'mysql:host=localhost;dbname=mysql'; //$dsn = 'mysql: ...

  2. Mssql链接mysql数据库

    最近在做mysql数据库实时同步到mssql数据库的方案,花了一周时间,测试通过了,在实际机器上测试出现了若干问题.第一个问题就是在mssql上链接mysql的问题. 第一步,安装 Mysql ODB ...

  3. 如何用DOS 链接mysql

    1.Ctrl+R 打开DOS窗口 2.键入 cd\ 回车进入C盘根目录 3.进入mysql bin目录下 操作mysql命令 4.输入连接数据库命令 mysql -hlocalhost -uroot ...

  4. SQL Server链接MySQL实践

    最近在访问多数据库的时候进行了SQLServer链接MySQL数据的实践,现总结如下: 一.  安装mysql-connector-odbc驱动: 1. 在SQL Server服务器的机器上安装mys ...

  5. Python学习笔记9-Python 链接MySql数据库

    Python 链接MySql数据库,方法很简单: 首先需要先 安装一个MySql链接插件:MySQL-python-1.2.3.win-amd64-py2.7.exe 下载地址:http://dev. ...

  6. Tomcat通过JNDI方式链接MySql数据库

    原文:Tomcat通过JNDI方式链接MySql数据库 拷贝MySQL的JDBC驱动到Tomcat的lib路径下 配置全局数据源或者单个Web应用的局部数据源 局部数据源 在Tomcat的conf/C ...

  7. visual studio 2012 链接Mysql 5.1

    首先在nuGet 下载MySql.Data.Entity 安装 mysql for visual studio http://www.mysql.com/why-mysql/windows/visua ...

  8. C# 链接MySql数据库

    C# 链接MySql数据库只得注意的几点: 1.C#链接MySql数据库要在网上下载一个mysql-connector-net-6.0.4-noinstall.rar  这里面放的都是一堆dll .将 ...

  9. python链接mysql

    1.安装MySQLdb MySQLdb 是用于Python链接Mysql数据库的接口,它实现了 Python 数据库 API 规范 V2.0,基于 MySQL C API 上建立的. 下载地址: ht ...

  10. 写给小白的JAVA链接MySQL数据库的步骤(JDBC):

    作为复习总结的笔记,我罗列了几个jdbc步骤,后边举个简单的例子,其中的try块请读者自行处理. /* * 1.下载驱动包:com.mysql.jdbc.Driver;网上很多下载资源,自己找度娘,此 ...

随机推荐

  1. vue 父子通信

    节制地使用 $parent 和 $children - 它们的主要目的是作为访问组件的应急方法.更推荐用 props 和 events 实现父子组件通信

  2. 如何在Mac和Windows PC之间无线共享文件

    有时候,我需要在Mac和PC之间无线共享文件.由于并非所有人都在使用macOS,因此无论是在办公室还是在家里,这种情况都会发生.尽管并非一帆风顺,但有一种无需任何第三方应用程序即可弥合差距的方法. 根 ...

  3. Page Object设计模式(一)

    一.简介 主要特点体现在“对界面交互细节的封装”上,使测试用例更专注于业务的操作,从而提高测试用例的可维护性.解决UI变动问题. page对象的一个基本原则经验法则是:凡是人能做的事,page对象通过 ...

  4. netty 4.x用户使用指南

    引言 问题 现在我们使用通用的应用程序或库来相互通信.例如,我们经常使用HTTP客户机从web服务器检索信息,并通过web服务调用远程过程调用.然而,通用协议或其实现有时不能很好地进行扩展.这就像我们 ...

  5. java控制台模式控制光标及字符颜色

    System.out.println("\033[47;31mhello world\033[5m"); 47是字背景颜色, 31是字体的颜色, hello world是字符串.  ...

  6. ES读写数据过程及原理

    ES读写数据过程及原理 倒排索引 首先来了解一下什么是倒排索引 倒排索引,就是建立词语与文档的对应关系(词语在什么文档出现,出现了多少次,在什么位置出现) 搜索的时候,根据搜索关键词,直接在索引中找到 ...

  7. .net core 中如何读取 appsettings.json 相关配置

    appsettings.json如下 { "Logging": { "LogLevel": { "Default": "Debug ...

  8. Uva1213(线性筛模板+dp)

    题意: 把n拆成k个不同素数的和,有多少种拆法. 解法: 打表后dp即可,这个dp的问题可以归纳为:在n个数中选k个数,使得和m的方案数 #include<cstdio> #include ...

  9. 使用Scanner类

    import java.util.Scanner;   public class HelloWorld {     public static void main(String[] args) {   ...

  10. c++多线程编程互斥锁初步

    上一次讲述了多线程编程,但是由于线程是共享内存空间和资源的,这就导致:在使用多线程的时候,对于共享资源的控制要做的很好.先上程序: #include <iostream> #include ...