For My Future)

流程简介  

  我所做的是把一个txt文档通过Navicat for MySQL转换成sql文件,然后把这个数据库文件放到自己的网站上,通过php中的sql语句实现数据库的连接及查询,并返回json格式的数据,如下图所示

http://39.101.69.250:88/qq.php?qq=1216951671

http://39.101.69.250:88/qq.php?qq=111111

mysql数据库接口如何写 数据库接口的编写_mysql

只要你会api的调用,看到这就知道该如何使用这个接口了,那么现在开始详细的教程。

一.sql文件转换 

  在进行转换之前,首先你要有自己的数据,并且安装好Navicat for MySQL,这款软件早在大二上数据库技术这门课的时候我就安装在电脑上,所以安装教程我已经不记得了,各位可以上网搜索安装教程。

  这是我的测试数据,

mysql数据库接口如何写 数据库接口的编写_数据库_02

可以看到,它的格式还是比较规整的,中间用----符号隔开。

  打开Navicat for MySQL,连接到本地数据库(网上有教程),随便新建选择一个表,会出现一个导入向导的按钮,点击它。

mysql数据库接口如何写 数据库接口的编写_服务器_03

下一步

mysql数据库接口如何写 数据库接口的编写_mysql数据库接口如何写_04

选择数据导入,点击下一步

mysql数据库接口如何写 数据库接口的编写_阿里云_05

第二个栏位分隔符换成其他符号- ,点击下一步

mysql数据库接口如何写 数据库接口的编写_数据库_06

这里没有栏位名填0,第一个数据行填1,不用填最后一个数据行。其它不用动,点击下一步

mysql数据库接口如何写 数据库接口的编写_mysql_07

点下一步到这个界面,将f2,f3,f4的勾选框都去掉,点击下一步

mysql数据库接口如何写 数据库接口的编写_数据库_08

一直点击下一步到最后,点击开始,

mysql数据库接口如何写 数据库接口的编写_mysql_09

完成后关闭来到Navicat for MySQL,确定下表的结构

mysql数据库接口如何写 数据库接口的编写_服务器_10

接下来添加栏位名,右键选择设计表

mysql数据库接口如何写 数据库接口的编写_mysql数据库接口如何写_11

修改栏位名,

mysql数据库接口如何写 数据库接口的编写_mysql数据库接口如何写_12

可以看到名字已经修改了,

mysql数据库接口如何写 数据库接口的编写_mysql_13

接着右键选择表,转储sql文件,选择结构和数据

mysql数据库接口如何写 数据库接口的编写_mysql_14

这时我们得到了sql文件。

二.sql文件上传到服务器 

  来到我们的宝塔界面,添加数据库,

mysql数据库接口如何写 数据库接口的编写_数据库_15

这里把访问权限改成所有人,点击提交

mysql数据库接口如何写 数据库接口的编写_阿里云_16

导入sql文件,从本地上传并导入

mysql数据库接口如何写 数据库接口的编写_阿里云_17

三.api接口制作 

  接口其实就是一个php文件,只不过我要调试运行php代码,所以要安装它的运行环境,花了很长时间。由于代码已经调试成功了,大家可以不用安装php运行环境了,直接把php文件放入到服务器让服务器运行即可。(第一次接触php语言,代码比较烂,注释都在代码里)

<?php 
 $db_host="39.101.69.250";//你自己的公网ip
 $db_name = "number";      //你上传的数据库名,在宝塔数据库界面可以看到
 $db_pwd = "1111";         //你上传的数据库密码,在宝塔数据库界面可以看到
 $link=mysqli_connect($db_host,$db_name,$db_pwd);//数据库连接
 mysqli_set_charset($link,"utf8");
 mysqli_select_db($link,$db_name); //选择数据库,一定要有这一步
 if($link->connect_error){
     die("无法连接数据库");
 }
 
$qq;
$fanhui = array();
$res = array('error'=>false);
 if(isset($_GET['qq'])){    //这个$_GET['qq']就是得到你输入网址http://39.101.69.250:88/qq.php?qq=1216951671最后的1216951671
    $qq = $_GET['qq'];
    
    $result =$link->query("SELECT number FROM `number` WHERE qq=$qq"); //sql语句查询,第一个number是你要得到的栏位名,第二个是表名
    //var_dump($result);
    while($row = $result->fetch_assoc()){
       array_push($fanhui,$row);
    }
   // var_dump($fanhui);
   $res['phone']=$fanhui;
}


   $link->close();
   header("Content-type:application/json");
    echo json_encode($res); //json返回
    die();
?>

回到宝塔界面,添加站点

mysql数据库接口如何写 数据库接口的编写_mysql数据库接口如何写_18

mysql数据库接口如何写 数据库接口的编写_mysql_19

放行端口要回到阿里云主机配置安全组规则,放行相应端口(详见上一篇建站教程),我的是放行85端口。

这里直接上传刚才的php文件即可

mysql数据库接口如何写 数据库接口的编写_阿里云_20

来测试一下

mysql数据库接口如何写 数据库接口的编写_服务器_21

很顺利获得结果,qq-副本.php就是自己上传的php文件名,这样就做出来一个数据库接口了。