[PHP] 纯文本查看 复制代码 <?php
// 数据库信息
$host = '127.0.0.1'; // 数据库主机名
$dbname = ''; // 数据库名称
$username = ''; // 数据库用户名
$password = ''; // 数据库密码
$key = 'fegvdvregdb';// 验证密文
try {
// 创建PDO对象并连接到数据库
$pdo = new PDO("mysql:host=$host;dbname=$dbname", $username, $password);
// 设置错误模式为异常模式
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {
// 发生错误时输出错误信息
echo "Connection failed: " . $e->getMessage();
}
// 获取POST请求中的SQL语句
$sql = $_POST['sql'];
// 获取POST请求中的msgkey参数
$msgkey = $_POST['msgkey'];
// 初始化返回结果
$result = array(
'code' => 200,
);
// 验证msgkey是否与网站内置的一致
if ($msgkey != $key) {
// 如果不一致,返回code状态码为202和错误信息
$result['code'] = 202;
$result['message'] = 'Invalid msgkey';
} else {
try {
// 执行SQL语句
$stmt = $pdo->prepare($sql);
$stmt->execute();
// 获取cha询结果
if (strpos(strtolower($sql), 'select') === 0) {
$result['data'] = $stmt->fetchAll(PDO::FETCH_ASSOC);
} else {
$result['data'] = array('affected_rows' => $stmt->rowCount());
}
} catch (PDOException $e) {
// 发生错误,设置code为201并输出错误信息
$result['code'] = 201;
$result['message'] = $e->getMessage();
}
}
// 输出JSON格式的结果
header('Content-Type: application/json');
echo json_encode($result, JSON_UNESCAPED_UNICODE);
?>
以上是PHP代码,填上你的mysql数据库信息,就可以通过api接口操作你的数据库,由于表的设计不同,PHP只有两个参数,一个msgkey用于验证提交信息是否为你设定的key密文,否则拒绝操作,sql就为数据库的sql语句即可,执行成功返回对应结果,失败返回错误信息,反正数据库返回什么,接口就会返回什么,输出格式都是json格式的。
易语言对接示例:
数据 = 编码_utf8到gb2312 (到文本 (网页_访问_对象 (填写你的php文件链接, 1, “msgkey=填写后台拟定的密文&sql=填写对应的sql语句”)))
例子:
数据 = 编码_utf8到gb2312 (到文本 (网页_访问_对象 (#api链接, 1, “msgkey=fegvdvregdb&sql=SELECT * FROM user WHERE 账号 = 4916168”)))
返回示例:
{"code":200,"data":[{"账号":"4916168","密码":"1234567","归属":"教师","登录次数":"18","最后登录时间":"2024-04-23 11:19:16","备注":"开发者账号"}]}
sql.zip
(1.02 KB, 下载次数: 47)
|