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

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

[复制链接]

315

主题

479

回帖

3001

积分

管理员

积分
3001
QQ
发表于 2023-9-16 22:41:37 | 显示全部楼层 |阅读模式
一个wordpress网站W,连接了两个不同的mysql数据库,分别是A和B,A是wordpress安装时自带的,B是在另外一台服务器上的创建的,现在前端uniapp程序要调用B上的数据库进行查询和读写操作,请给出一段示例代码。
" _& R" s$ M$ E; X# n: {, b
: R( F* c8 m3 E0 q: r0 t首先,你需要在uniapp程序中使用合适的方式连接到数据库B。以下是一个示例代码,使用uniapp的`request`方法发送HTTP请求到B的服务器上,然后进行数据库查询和读写操作。  o4 g) v: U% l3 N0 K" E

5 o7 X' k4 O  P. X" J```javascript
6 d6 B& f4 t* k% p9 P$ ^9 j// 在uniapp中调用B数据库的示例代码
$ P0 D% H8 u* B
4 H7 {! r% }/ C6 n; X5 P; x% ^// 定义B数据库的服务器地址和端口号
5 l) Z+ Q0 t- V. S( f" i8 bconst serverUrl = 'http://B服务器的地址:端口号';
3 B* V* H/ \2 x" ^8 J. l' a7 C2 v$ p1 D0 B  ~; F" K2 d
// 查询操作# @7 I* L+ n! ^: C. n. j
uni.request({
  W0 f7 z* p4 `9 Turl: serverUrl + '/query', // 在B服务器上定义的查询接口7 Z/ z- Z7 J% k$ m
method: 'GET',6 h9 L; ]5 F7 h) f* \
success: function(res) {
/ o$ T/ q, ?- a0 V/ U. M; D// 查询成功后的处理逻辑: n0 b+ K8 u# {) p7 X$ b! E, M
console.log(res.data); // 输出查询结果3 R! N. [* F; d% t$ a
},1 C7 L4 {: \! N
fail: function(err) {
. p" N1 g0 ]  ~4 e: D// 查询失败后的处理逻辑& \. f% O5 r% |4 g8 y5 o
console.error(err);
  C/ V8 \! Q; R+ `; |, W}
1 U: ]2 u" }2 o});
0 z- }5 L$ S* B+ J% |( \1 X) t% ^0 j  {0 ^
//读写操作6 u$ u3 N( Y3 R9 i( i, @, |! _; ?
uni.request({
3 j3 \9 u0 u/ Q; d- h1 l7 j. Eurl: serverUrl + '/write', // 在B服务器上定义的写入接口
5 u# Q5 E) b- T" Q+ p* Q9 \3 [2 dmethod: 'POST',. w% m; N* R2 ]& E1 u
data: {6 g+ E  M* H0 _* a
//传递的写入数据8 E+ R; I5 w$ u8 e4 Z5 v
// 根据B数据库的接口定义,传递合适的参数
! |, i1 N! Y5 ^. g  I},1 _4 C. m7 S  G) Y- a+ l( z
success: function(res) {" N6 O  q9 }5 e3 a2 X9 k9 q# @; \
// 写入成功后的处理逻辑
: S9 ]; C- m9 econsole.log(res.data); // 输出写入结果
$ c% r+ o: ]3 x},5 _2 @' ^$ w! Q
fail: function(err) {0 L2 D# I0 ^6 N- ~# b  C
// 写入失败后的处理逻辑) e/ ?2 ?6 J' E8 O
console.error(err);
' y( v$ ^1 Y* G. q! E+ F! B3 K}
/ F. E* ^0 f9 s  X  \" B});6 N: ?( E$ N! F6 z6 O! z
```
$ h# F, U  h+ O# q
. y2 t9 l3 F1 L& c0 n: y3 c( ^请注意,上述代码中的`serverUrl`需要替换为实际的B数据库服务器的地址和端口号。同时,根据B数据库的接口定义,适当修改查询和写入操作的参数和数据。2 L* |/ u" U7 S; N1 Y
回复

使用道具 举报

315

主题

479

回帖

3001

积分

管理员

积分
3001
QQ
 楼主| 发表于 2023-9-16 22:46:16 | 显示全部楼层
我在uniapp前端页面上有一个表单,分别有姓名和手机号码,需要保存到B数据库,同时把保存的结果无刷新实时地回显到前面页面上。1 F% R) k2 ~8 Z* ]; D$ o

4 o- o: \- u. |; G* k5 I& V
4 a! ]% @  K2 j5 Y& z% \, I如果你想在uniapp的前端页面上保存表单数据到B数据库,并实时回显结果,那么与W网站的关系是通过B数据库进行数据交互。
# r' O( U9 r1 m3 O) N
$ J; |0 o, M* g5 C: C2 {- F在这种情况下,你需要在B数据库的服务器上创建一个接口,用于接收前端页面发送的保存请求,并将数据保存到B数据库中。然后,将保存结果返回给前端页面,以便实时回显。
8 u/ d" B7 L$ G4 K% o! b- w2 i: L5 j& T2 Y, u
以下是一个示例代码,展示了如何在B数据库的服务器上创建一个保存接口:
- D8 W9 ]) }: P6 f8 }4 V/ B
1 J* U" e, I: R```php) R* W4 x6 p' b0 F/ @' m
// 在B数据库服务器上创建保存接口的示例代码(使用PHP)
, m  M+ m$ G1 |; b, R0 ^8 i) a4 O% G2 q2 w, `1 D
// 连接到B数据库
3 A2 R7 o! N/ J1 w6 P3 j$ p$servername = "B数据库的服务器地址";$ S/ w0 B" j& _
$username = "B数据库的用户名";; Z8 H- |0 y# u- T9 v
$password = "B数据库的密码";
# D9 M% P9 }0 O" x* h- Q$dbname = "B数据库的名称";
( e) d( Z3 A( {/ h/ n3 z% L& o  T3 h! z# k6 b/ k* _, c+ K" C
$conn = new mysqli($servername, $username, $password, $dbname);* A6 k# |( F+ I0 v) R
if ($conn->connect_error) {1 [0 a% a- x& _9 N; x( }7 u
die("连接B数据库失败: " . $conn->connect_error);3 u+ Q! [) i4 H7 x2 J( z( ^
}
+ D$ Q5 b5 n! Q! x2 A& T2 [
3 [9 u5 @% @9 {- `& z//保存接口; Q) [0 F+ E7 T  c9 ~. A7 u% F7 C
if ($_SERVER["REQUEST_METHOD"] == "POST") {
3 @0 M# e& V8 [# w$name = $_POST["name"]; // 表单中的姓名字段1 ]$ O0 z* J+ I5 S& ~& W3 c
$phone = $_POST["phone"]; // 表单中的手机号码字段
+ f' s$ R8 _. _/ `
# ^9 P6 E- D2 K& b2 J) f// 将数据保存到B数据库的表中
' ?6 o1 |, ]! c: T0 c$ C# l$sql = "INSERT INTO 表名 (姓名, 手机号码) VALUES ('$name', '$phone')";! H. `* b. I$ ]( r" z3 z
if ($conn->query($sql) === TRUE) {; z# x- Q3 R8 X, L4 O* t! h9 g% H
$response = "保存成功";
7 c' ]7 U* a2 S& A' y( I" [9 P; V} else {
; f# T, W0 R/ s& k* P$response = "保存失败: " . $conn->error;# u! l0 m6 q( ]; v5 ^' A
}
, t) X+ q2 C) h5 G0 r
1 H+ t/ {4 ~5 i" L// 返回保存结果给前端页面/ Y( f' [7 F, |, d( I
echo $response;1 e5 d/ a% O  c- u% `
}2 v- @/ m" K7 Q4 B9 ^# C

& d+ Y+ D' r. W5 M% ?- h4 c$conn->close();0 r! |( S4 ^! [
```
1 Q! K/ b( \- |1 r1 @' h/ B, x1 d( m3 J+ }0 \; B# G, y
在前端uniapp页面中,你可以使用之前提到的示例代码,将表单数据发送到B数据库的保存接口,并实时回显保存结果。2 @7 x- G) q, E
" ]% R1 ]' r4 J' V! L
请注意,上述示例代码中的B数据库的连接信息和保存接口的URL需要根据实际情况进行修改。同时,根据B数据库的表结构,适当修改保存接口中的SQL语句和表名。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-4-25 06:58 , Processed in 0.066091 second(s), 4 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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