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

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

[复制链接]

314

主题

478

回帖

2960

积分

管理员

积分
2960
QQ
发表于 2023-9-16 22:41:37 | 显示全部楼层 |阅读模式
一个wordpress网站W,连接了两个不同的mysql数据库,分别是A和B,A是wordpress安装时自带的,B是在另外一台服务器上的创建的,现在前端uniapp程序要调用B上的数据库进行查询和读写操作,请给出一段示例代码。
) Y# s2 [" A( a, [
$ D3 ], A' ^9 K0 A9 s4 R. o& F首先,你需要在uniapp程序中使用合适的方式连接到数据库B。以下是一个示例代码,使用uniapp的`request`方法发送HTTP请求到B的服务器上,然后进行数据库查询和读写操作。: z' |0 k* o% A. j0 X0 `
3 B, B3 W3 t( f+ z5 g# S( F
```javascript) j, ^# G2 L6 P# a# B
// 在uniapp中调用B数据库的示例代码
8 @2 W6 v" n( T- {
9 s/ f- K* {5 P; B. ~& \// 定义B数据库的服务器地址和端口号0 f8 I* D1 g# F
const serverUrl = 'http://B服务器的地址:端口号';
2 `1 s3 O5 L2 D" L* r0 s) W* r6 T) v. A
// 查询操作8 |- T* J! S: \7 p  |
uni.request({; n7 j9 {3 b2 z+ Y& [2 I- z
url: serverUrl + '/query', // 在B服务器上定义的查询接口' q! X/ \3 i2 T7 L6 Y
method: 'GET',
5 n: |: u; L2 _8 ?/ `2 H+ [success: function(res) {
6 b8 w. T9 E! t0 t// 查询成功后的处理逻辑/ s# d( {9 O6 y1 Y; ~% \2 U5 Z6 C8 A
console.log(res.data); // 输出查询结果
* E; u% M$ m  L0 d$ z},
; `( o* w5 x: B& `0 m: B# D9 h( N/ g4 i) kfail: function(err) {
; |& e8 `" K! n// 查询失败后的处理逻辑
& O6 u" W( n5 E! o" Dconsole.error(err);* W$ v7 H+ t0 Q- A5 p  s
}
! @! p: X/ r6 P6 \* W& g});7 m  ?4 \& e0 q4 I

$ Z3 N! l/ u- K3 I' U1 }//读写操作
8 J0 |1 F, t& r# Guni.request({' q+ M( M5 X5 l# G  E
url: serverUrl + '/write', // 在B服务器上定义的写入接口+ F, W+ w! C: E" s; F4 O
method: 'POST',
& u. B% H: ^  x  x4 ldata: {9 f  {( b5 l/ i
//传递的写入数据
$ p% X$ `& x. e! r// 根据B数据库的接口定义,传递合适的参数' j+ S7 M$ R( e& o- L2 f
},. R% w/ {- P! L! I( L. H8 ?4 U
success: function(res) {* z. J$ W* u& j
// 写入成功后的处理逻辑- t- }6 U% O1 B, a4 A
console.log(res.data); // 输出写入结果
: s5 C7 l# x! X" s* f},
- V# G: r% c) Pfail: function(err) {
0 K+ C9 W1 w% k& M" K3 |, y7 K// 写入失败后的处理逻辑
' z8 ]6 \) ^/ V2 oconsole.error(err);+ c1 h5 |1 U8 ^$ \* m
}% R9 q+ D# f7 v" v
});
% \0 I* e- p$ m3 V# U. e```
; e0 ?! T. S0 j- K) f
: H7 n' [2 l6 S: Q请注意,上述代码中的`serverUrl`需要替换为实际的B数据库服务器的地址和端口号。同时,根据B数据库的接口定义,适当修改查询和写入操作的参数和数据。: R$ X4 v& o, u' p8 J+ W" }& _( c
回复

使用道具 举报

314

主题

478

回帖

2960

积分

管理员

积分
2960
QQ
 楼主| 发表于 2023-9-16 22:46:16 | 显示全部楼层
我在uniapp前端页面上有一个表单,分别有姓名和手机号码,需要保存到B数据库,同时把保存的结果无刷新实时地回显到前面页面上。
# d: \. G* X2 Q& p( c: b! o- Y( C

. ~/ v% P' F7 X2 I" D! j如果你想在uniapp的前端页面上保存表单数据到B数据库,并实时回显结果,那么与W网站的关系是通过B数据库进行数据交互。
3 D  n  p5 L$ r, Q) ], |: [3 G. h& N: E: a
在这种情况下,你需要在B数据库的服务器上创建一个接口,用于接收前端页面发送的保存请求,并将数据保存到B数据库中。然后,将保存结果返回给前端页面,以便实时回显。% S7 E) ]3 W! L9 T- c$ s$ c

7 `2 \8 m5 D, X% j$ H& b以下是一个示例代码,展示了如何在B数据库的服务器上创建一个保存接口:2 Z6 @+ n1 Z! p* t' H- S  Q/ A
& [2 Q" Z! m/ N
```php
. \" ~4 P* q7 P. V# h// 在B数据库服务器上创建保存接口的示例代码(使用PHP)8 N# e  a+ X4 `% t7 x

: V+ z' I5 \6 c; J* J// 连接到B数据库
! @- D# j$ R% n' u* c$servername = "B数据库的服务器地址";/ M% E8 C0 E9 H4 t
$username = "B数据库的用户名";0 u6 M/ M, l. T6 S+ T7 W4 `
$password = "B数据库的密码";; s) \' V) U. I; I  i$ d" }
$dbname = "B数据库的名称";
4 y8 s( M1 |5 w; C( L6 C) }$ n8 T) l! ~) z1 F
$conn = new mysqli($servername, $username, $password, $dbname);
1 X6 i9 r( r. Y+ G" g1 ?if ($conn->connect_error) {, q- _! ?/ G7 N* S: I" |+ m2 o0 F
die("连接B数据库失败: " . $conn->connect_error);
% q/ ?: u2 [& C1 ^& K. f  v}, m& |4 b6 N% z& }1 h, v, u

& y# Q7 Q, \" o$ {/ T% S//保存接口
9 y* I, ~5 e" Cif ($_SERVER["REQUEST_METHOD"] == "POST") {0 q# [/ X/ y9 B& M
$name = $_POST["name"]; // 表单中的姓名字段/ i& c) X& V  C' {. m: y" [- N" p( K
$phone = $_POST["phone"]; // 表单中的手机号码字段' j) Q( Q4 m2 F$ \' f0 W( C

5 b) W0 d' K  ^- F6 n) I6 n! I// 将数据保存到B数据库的表中) z' Z6 P( R" O
$sql = "INSERT INTO 表名 (姓名, 手机号码) VALUES ('$name', '$phone')";
+ q/ Z) M; Y3 f! p; a" uif ($conn->query($sql) === TRUE) {( i* s2 x* Z3 k2 f" E- [" o
$response = "保存成功";
& c. P* ]8 X4 C% A2 N3 [} else {% Y; P6 c$ Q/ b8 M0 v
$response = "保存失败: " . $conn->error;; v+ A9 ?1 y- E0 a5 ^! l
}' W6 Y1 ^9 f/ N: H
9 Y- k! |- d7 s. v# \
// 返回保存结果给前端页面- @# f- {! j  Y7 }1 q9 i
echo $response;( ^' L" X5 F" U" \; k! t2 F
}
, P/ V3 K9 p2 D8 i; ^
* H4 ]$ C  F# C' _% f7 R$conn->close();; h, _* n) k' L' a( U1 L; G
```
7 x0 _0 I- k# ^- r+ `* c4 e% Y+ J+ p! x1 y) d5 F
在前端uniapp页面中,你可以使用之前提到的示例代码,将表单数据发送到B数据库的保存接口,并实时回显保存结果。
/ W( Z; U: G; N7 N
9 w3 Z- o- a) t# e# q$ a请注意,上述示例代码中的B数据库的连接信息和保存接口的URL需要根据实际情况进行修改。同时,根据B数据库的表结构,适当修改保存接口中的SQL语句和表名。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-4-5 01:56 , Processed in 0.082180 second(s), 20 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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