一、使用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自定义分页组件---切图网

    vue2.5自定义分页组件 Pagination.vue,可设置每页显示条数,带跳转框直接跳转到相应页面,亲测有用.目前很多框架自带有分页组件比如elementUI,不过在面对一个拿到PSD稿,然后重 ...

  2. Asciidoctor-pdf生成pdf文件

    本文使用asciidoc语法编写. = Asciidoctor-pdf生成pdf文件 Pinnsvin Pinnsvin@163.com v1.0 {docdate} :plantuml-server ...

  3. js Dom为页面中的元素绑定键盘或鼠标事件

    html鼠标事件 onload 页面加载 onclick 鼠标单击 onmouseover 鼠标移入 onmouseout 鼠标移出 onfocus 获取焦点 onblur 失去焦点 onchange ...

  4. opencv —— imread、namedWindow & imshow、cvtColor、imwrite 加载、显示、修改、保存图像

    加载图像:imread 函数 Mat imread(const string& filename, int flags = 1): filename:需要载入的图像的路径名. flags:加载 ...

  5. P1980 计数问题(int,string,stringstream)

    题目描述 试计算在区间 1 到 n 的所有整数中,数字x(0 ≤ x ≤ 9)共出现了多少次?例如,在 1 到 11 中,即在 1,2,3,4,5,6,7,8,9,10,11 中,数字 1 出现了 4 ...

  6. JavaDay11

    Java learning_Day11 本人学习视频用的是马士兵的,也在这里献上 <链接:https://pan.baidu.com/s/1qKNGJNh0GgvlJnitTJGqgA> ...

  7. 关于FrameLayout中覆盖的问题

    FrameLayout中xml文件中写在下方的控件会默认覆盖上方的控件,如图,我准备实现如下效果: 这时recyclerview就要写在前面 如果recyclerview写在下面就会覆盖掉我linea ...

  8. 论文阅读笔记(二十一)【CVPR2017】:Deep Spatial-Temporal Fusion Network for Video-Based Person Re-Identification

    Introduction (1)Motivation: 当前CNN无法提取图像序列的关系特征:RNN较为忽视视频序列前期的帧信息,也缺乏对于步态等具体信息的提取:Siamese损失和Triplet损失 ...

  9. Java第二节课总结

    Java的基本运行单位是类.类由数据成员和函数成员组成.变量的类型之间可以相互转换.String是一个类.static代表静态变量. 运行结果: false                false  ...

  10. laravel 解决 sql mode only_full_group_by

    this is incompatible with sql_mode=only_full_group_by 先贴报错是这样的哦,sql 中使用到了 group by 然后这是mysql-5.7以上版本 ...