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

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

[复制链接]

334

主题

517

回帖

3394

积分

管理员

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

5 q/ E# p1 y+ _: e2 q首先,你需要在uniapp程序中使用合适的方式连接到数据库B。以下是一个示例代码,使用uniapp的`request`方法发送HTTP请求到B的服务器上,然后进行数据库查询和读写操作。
: D5 Q- |, Q6 O6 {1 r9 q% Y3 ~2 r3 F8 e+ p3 O) i
```javascript- C+ V' N" w$ W
// 在uniapp中调用B数据库的示例代码
9 H. a6 K) e* X/ r0 V4 `# u; f5 u7 f: Z$ U5 b0 k# A) |
// 定义B数据库的服务器地址和端口号9 c! G. O. h' J7 d0 c+ N! J
const serverUrl = 'http://B服务器的地址:端口号';. @7 i0 S8 w) T9 u. o, E0 u2 F

/ _7 c* G7 x, f$ f: u/ z2 q5 M1 S9 P// 查询操作
3 e' ^' G7 O8 [) D0 M8 m9 D# [4 luni.request({
" G# Q! t5 S, t; M: durl: serverUrl + '/query', // 在B服务器上定义的查询接口
7 f9 z! I! A. Nmethod: 'GET',! V5 o; U& a( X2 i9 x2 B0 u
success: function(res) {5 T; }8 Q0 z8 W) H4 g! E7 e6 i
// 查询成功后的处理逻辑
8 P4 ?3 {, d; C  G& Rconsole.log(res.data); // 输出查询结果
0 A* Y/ A; f5 R5 Q5 C, M},2 n  M4 L& H; W- b1 S. x. `
fail: function(err) {5 [* _: k. ~7 |
// 查询失败后的处理逻辑
* O* c9 g3 u  Q! n# \0 a- J  yconsole.error(err);
; p& \) R7 [" v% p2 _% Y" ~7 f% f' [}
, A  S2 P2 i7 |% T});
$ S7 L% r8 }* a4 K8 r
7 u+ T( c: _4 ?* Y( _& o5 }//读写操作) B- _" x0 e/ B  }6 m- Y3 ~
uni.request({8 N" f3 j: A. C; K
url: serverUrl + '/write', // 在B服务器上定义的写入接口/ h1 @( v# [! g: _
method: 'POST',% \+ U, `; i# \" G) C' }/ D! \! Y
data: {
$ U. l) I3 q& x- U8 U//传递的写入数据! K3 p, i# F, N9 X+ T1 x5 m
// 根据B数据库的接口定义,传递合适的参数
* t: i9 |& f6 C" c+ Z( \},& Y" h$ a( c  n' m
success: function(res) {# u% Z8 b3 `! v
// 写入成功后的处理逻辑4 H5 b! R1 O' f% c. I4 H
console.log(res.data); // 输出写入结果
. x) \3 B: e; K( C/ a5 |  H; d2 |},1 b0 J0 z5 n( a, L( {. G& k! B. h0 b
fail: function(err) {
3 A- k0 m' z% R// 写入失败后的处理逻辑
9 W2 r5 J' z( X: B2 c/ g* f/ Vconsole.error(err);
4 E  O5 c1 p1 X! d- _2 I}
( K1 ^* N, C2 K});8 p: a5 ], k* {& J9 f6 s
```
6 N5 {4 d) l+ j/ W, o1 O7 W
& c4 `) P# q0 z' W请注意,上述代码中的`serverUrl`需要替换为实际的B数据库服务器的地址和端口号。同时,根据B数据库的接口定义,适当修改查询和写入操作的参数和数据。- ?3 L# x) F( i
回复

使用道具 举报

334

主题

517

回帖

3394

积分

管理员

积分
3394
QQ
 楼主| 发表于 2023-9-16 22:46:16 | 显示全部楼层
我在uniapp前端页面上有一个表单,分别有姓名和手机号码,需要保存到B数据库,同时把保存的结果无刷新实时地回显到前面页面上。
4 Y7 b' ]- \$ G  w: ^, S+ v8 E  }' |% ~/ K
1 Z: e3 f! C* w3 f. z. J' v; V5 p
如果你想在uniapp的前端页面上保存表单数据到B数据库,并实时回显结果,那么与W网站的关系是通过B数据库进行数据交互。9 S% [/ t( ]  |
  e% z& }$ g, {
在这种情况下,你需要在B数据库的服务器上创建一个接口,用于接收前端页面发送的保存请求,并将数据保存到B数据库中。然后,将保存结果返回给前端页面,以便实时回显。
  t5 ?  y/ q( e, q; P- \( m9 `
7 ~' I$ a/ s! c1 s' ?: }以下是一个示例代码,展示了如何在B数据库的服务器上创建一个保存接口:  p' i  c7 s! u0 D- z4 a) }
  i' t  A" L% f' ~' B# f
```php
$ z# C- Y' S  ^+ o// 在B数据库服务器上创建保存接口的示例代码(使用PHP)
& Z0 l2 |$ p" H! Q% I4 @
/ f8 ~( Z# k4 ]) L" e// 连接到B数据库8 ?% x! ]7 z/ l5 c% i2 @) P. m
$servername = "B数据库的服务器地址";0 U" ?. x5 g# S. U) i- }0 f
$username = "B数据库的用户名";
0 e; j9 Z$ K$ `$ o9 m+ K  y1 C9 e$password = "B数据库的密码";, K- S( ?: r. X0 j( E: Y
$dbname = "B数据库的名称";
5 J& `1 O7 X( \
7 T2 Z/ E4 L( ]6 D9 P$conn = new mysqli($servername, $username, $password, $dbname);
% E. I9 `! w5 O/ x3 iif ($conn->connect_error) {6 y9 A: }  P7 Y
die("连接B数据库失败: " . $conn->connect_error);9 B0 U( u! ^, ?/ d) _% I, s
}, e( L$ y7 `6 T( q  M8 G; W
& Z* b2 U1 c+ L0 c. X1 n
//保存接口
+ Z3 Q9 y& J- S2 {9 dif ($_SERVER["REQUEST_METHOD"] == "POST") {
9 }% p4 B" d. Y) f: O; f$name = $_POST["name"]; // 表单中的姓名字段
- ?0 X5 |5 ~" v1 j( n1 V4 i3 A$phone = $_POST["phone"]; // 表单中的手机号码字段
' y/ t% z5 n9 {% D. c5 |5 m/ j( o0 ^1 f
// 将数据保存到B数据库的表中
' w' e# t" C! ~: [$sql = "INSERT INTO 表名 (姓名, 手机号码) VALUES ('$name', '$phone')";$ |( _+ u7 M" N% c$ g
if ($conn->query($sql) === TRUE) {
- D5 \$ [( |& L$ h$response = "保存成功";
9 O( E2 U: h  q} else {
$ }* r: w- c0 m$ U& H1 F$ q, D2 F$response = "保存失败: " . $conn->error;2 @/ P- k  U/ }( y; _; ]9 f
}
" d  R) s0 m% K1 H+ b/ s: q3 ]9 o& E3 g' |( M0 {0 r) t. _
// 返回保存结果给前端页面
5 w% b) n6 J' zecho $response;$ L0 p3 b7 W1 H( r( e) c1 ~! s
}
- @6 M4 A7 i3 [& L
- h. K7 m% D; G$conn->close();
$ W' v, `) Z3 k```
! P$ X1 \9 G# W) ~: X- K4 R/ @; Z7 l% \
在前端uniapp页面中,你可以使用之前提到的示例代码,将表单数据发送到B数据库的保存接口,并实时回显保存结果。4 W$ r+ S, |/ q
& P' Z9 b' ]$ ?  u
请注意,上述示例代码中的B数据库的连接信息和保存接口的URL需要根据实际情况进行修改。同时,根据B数据库的表结构,适当修改保存接口中的SQL语句和表名。
回复

使用道具 举报

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

本版积分规则

QQ|Archiver|手机版|小黑屋|通达创业无忧 ( 粤ICP备2023021749号|粤公网安备 44030402006137号 )

GMT+8, 2025-11-30 00:37 , Processed in 0.080459 second(s), 3 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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