找回密码
 立即注册
查看: 891|回复: 1

一个wordpress网站W,如何连接两个不同的mysql数据库?

[复制链接]

320

主题

485

回帖

3140

积分

管理员

积分
3140
QQ
发表于 2023-9-16 22:41:37 | 显示全部楼层 |阅读模式
一个wordpress网站W,连接了两个不同的mysql数据库,分别是A和B,A是wordpress安装时自带的,B是在另外一台服务器上的创建的,现在前端uniapp程序要调用B上的数据库进行查询和读写操作,请给出一段示例代码。: I7 k: x/ I/ n+ z

2 c- ?% p5 N6 M9 o首先,你需要在uniapp程序中使用合适的方式连接到数据库B。以下是一个示例代码,使用uniapp的`request`方法发送HTTP请求到B的服务器上,然后进行数据库查询和读写操作。
4 Z9 s" d: E" h6 v% n
4 w' o7 f2 o& L```javascript
5 U& X( }9 A6 ?3 r// 在uniapp中调用B数据库的示例代码
- K+ F0 G% W: W) M2 U1 T9 L0 l4 _4 [+ T9 m
// 定义B数据库的服务器地址和端口号# ~# u5 L7 y! ~6 {) K" M
const serverUrl = 'http://B服务器的地址:端口号';
" ]+ w. k8 Y" R/ w: j2 {# c3 ]) R. ]5 k0 Q( M. w
// 查询操作/ o  j+ E9 }6 F$ t6 i/ u8 u% v
uni.request({
- \# g0 W2 ~* |5 o9 aurl: serverUrl + '/query', // 在B服务器上定义的查询接口
5 }3 {0 J1 C4 {& \: n2 T) Mmethod: 'GET',0 ?$ @1 d" u+ }  o
success: function(res) {$ C% k8 J. M: T' o8 @
// 查询成功后的处理逻辑
5 Y3 n" V1 Z6 _console.log(res.data); // 输出查询结果
8 M/ W" b4 q: D! B( \},
( Q- y2 A) |0 _: y5 }. p( Z# ~fail: function(err) {
0 }; v* Q1 z) N3 G7 z+ O$ G// 查询失败后的处理逻辑7 J9 Q# O4 y% B7 X, |& O) z7 A
console.error(err);( e) [9 C5 r- z- X6 z$ X0 G( U
}" ^! D0 e1 c3 X. V0 L* f
});
/ \2 U# e4 u& R% Z1 r: C
1 H( }$ E# ]6 u//读写操作
3 ^2 U! {: I7 P+ v7 Cuni.request({
4 Z/ ]9 r/ [) ~8 T9 P; I* Burl: serverUrl + '/write', // 在B服务器上定义的写入接口  @7 [. w5 Y0 g" U% b
method: 'POST',: y- ^, y7 N) [
data: {! L. I- j" a4 ~0 r4 H. x" z, P' t
//传递的写入数据
" w& g4 V* D- U1 ?4 ?) M// 根据B数据库的接口定义,传递合适的参数1 `+ _! h) r/ E: M
},8 k) Q7 U7 K6 Z' p7 j. h  A8 y( S
success: function(res) {6 Z5 L0 l' `9 m2 w+ E( R4 a3 C
// 写入成功后的处理逻辑( b: O, L9 C  L; c4 S
console.log(res.data); // 输出写入结果
8 ?6 E4 [4 d* u},
5 D' R% J6 r+ ]: ]; F, n. k$ g9 sfail: function(err) {
9 G" q; r# M. w$ M// 写入失败后的处理逻辑
$ ~2 g/ s- `( d7 i8 w% X2 Gconsole.error(err);% O' Z, U3 L1 P4 S3 E2 }+ V
}
* T" F2 w8 o6 ]3 \5 I' }0 I$ E});
% W+ ?# O$ u. d* m```2 }2 F. f; o7 ^1 v6 g: m
$ i' h+ W0 K7 _7 }$ @
请注意,上述代码中的`serverUrl`需要替换为实际的B数据库服务器的地址和端口号。同时,根据B数据库的接口定义,适当修改查询和写入操作的参数和数据。2 c9 Y( {1 F& k' k
回复

使用道具 举报

320

主题

485

回帖

3140

积分

管理员

积分
3140
QQ
 楼主| 发表于 2023-9-16 22:46:16 | 显示全部楼层
我在uniapp前端页面上有一个表单,分别有姓名和手机号码,需要保存到B数据库,同时把保存的结果无刷新实时地回显到前面页面上。) u/ h6 Q4 T8 w! M
3 ]! b3 Y% q  h2 H# S

/ D% |$ ~  W' F# \* j5 Z& s- N如果你想在uniapp的前端页面上保存表单数据到B数据库,并实时回显结果,那么与W网站的关系是通过B数据库进行数据交互。
0 }3 k$ i' R$ u6 A3 G: p% \* S- q6 J1 v! @; x: z7 k+ a
在这种情况下,你需要在B数据库的服务器上创建一个接口,用于接收前端页面发送的保存请求,并将数据保存到B数据库中。然后,将保存结果返回给前端页面,以便实时回显。. T2 y/ z# @* p  N
3 G2 t) l% v3 x& Z
以下是一个示例代码,展示了如何在B数据库的服务器上创建一个保存接口:  ?0 e$ Z6 l4 r" m$ c$ a

  ]+ T( I: S$ @/ ````php
1 v* s' l% M) X# f2 y9 n// 在B数据库服务器上创建保存接口的示例代码(使用PHP)0 D1 K+ \1 _" C2 H" N

: o. L; A) p! O9 _  M// 连接到B数据库
" r. M' |( E2 j$ C8 a3 Y' o$servername = "B数据库的服务器地址";
0 n5 {- D! C) a$username = "B数据库的用户名";2 @5 t5 t7 Z! ~$ l. O6 I8 r
$password = "B数据库的密码";
- ]. a( q0 i  H* H( d$dbname = "B数据库的名称";
7 u* Z& h5 A1 V  S0 n) l5 E9 O( {+ J: R. m+ w' T
$conn = new mysqli($servername, $username, $password, $dbname);0 b) D  t" U3 B
if ($conn->connect_error) {
- w, |# s, v+ _& k8 ldie("连接B数据库失败: " . $conn->connect_error);
3 t$ m& |9 x- ?0 i( K2 {: q/ d}. l  G& r4 ]3 G- h7 c4 l

! ]# r$ t7 ^, |/ W; A) ?//保存接口
8 D( i7 F1 N2 P4 R. ^# P! Lif ($_SERVER["REQUEST_METHOD"] == "POST") {0 x; c7 i# F& h4 l, ~+ l
$name = $_POST["name"]; // 表单中的姓名字段
+ I% h% q. L) O* |  F& f) E1 e$phone = $_POST["phone"]; // 表单中的手机号码字段" {5 O( V# M& U" [1 {7 r% B
) }3 u4 ~7 W2 Y
// 将数据保存到B数据库的表中4 p. a* L( m* u% j8 p7 O/ Y
$sql = "INSERT INTO 表名 (姓名, 手机号码) VALUES ('$name', '$phone')";9 e2 B4 U' N4 I2 f
if ($conn->query($sql) === TRUE) {( D( [1 H& C& S3 |8 h" @& U  J
$response = "保存成功";
# b$ ^9 |* l; V4 b  o& |9 f} else {
' p( w$ ?6 R. Z1 d/ }- u4 j$response = "保存失败: " . $conn->error;& L3 Q# p# a0 m& @5 H
}2 i: Q% q  N" s" l

1 t2 R- U1 u# \7 a// 返回保存结果给前端页面
! m! V3 X6 `2 q# H7 aecho $response;
5 Q  ~* f, W9 }/ c! j}
3 h& V% M: t9 O& T+ ~( K! Q$ h& j/ x6 D
$conn->close();6 A2 t! g  Z, B' v1 R; p" j
```
5 G0 j4 ?: l- [3 H4 K0 q% T; \# a) c4 `9 |4 K7 S
在前端uniapp页面中,你可以使用之前提到的示例代码,将表单数据发送到B数据库的保存接口,并实时回显保存结果。4 l5 k+ g  r1 G- x

5 {6 ~5 F; |1 |. J) ]请注意,上述示例代码中的B数据库的连接信息和保存接口的URL需要根据实际情况进行修改。同时,根据B数据库的表结构,适当修改保存接口中的SQL语句和表名。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|通达产控投资 ( 粤ICP备2023021749号-1|粤公网安备 44030402006137号 )

GMT+8, 2025-8-19 13:47 , Processed in 0.077403 second(s), 4 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表