一、案例展示
1.前端商品列表,这里可以选择很多商品,商品在后台自己随便配置
2.选择抖音产品,下单。
3.点击立即支付
二、环境:Linux系统 进入宝塔依次安装:Nginx> MySQL> php> phpMyAdmin
1. 修改数据库配置:/application/database.php
use think\Env;
return [
// 数据库类型
'type' => Env::get('database.type', 'mysql'),
// 服务器地址
'hostname' => Env::get('database.hostname', '127.0.0.1'),
// 数据库名
'database' => Env::get('database.database', 'ds-prod'),
// 用户名
'username' => Env::get('database.username', 'root'),
// 密码
'password' => Env::get('database.password', '123456'),
// 端口
'hostport' => Env::get('database.hostport', '3306'),
// 连接dsn
'dsn' => '',
// 数据库连接参数
'params' => [],
// 数据库编码默认采用 utf8mb4
'charset' => Env::get('database.charset', 'utf8mb4'),
// 数据库表前缀
'prefix' => Env::get('database.prefix', 't_'),
// 数据库调试模式
'debug' => Env::get('database.debug', false),
// 数据库部署方式:0 集中式(单一服务器),1 分布式(主从服务器)
'deploy' => 0,
// 数据库读写是否分离 主从式有效
'rw_separate' => false,
// 读写分离后 主服务器数量
'master_num' => 1,
// 指定从服务器序号
'slave_no' => '',
// 是否严格检查字段是否存在
'fields_strict' => true,
// 数据集返回类型
'resultset_type' => 'array',
// 自动写入时间戳字段
'auto_timestamp' => false,
// 时间字段取出后的默认时间格式,默认为Y-m-d H:i:s
'datetime_format' => false,
// 是否需要进行SQL性能分析
'sql_explain' => false,
];
2.修改数据库"t_pay"表,你的冷钱包授权地址,和收款地址
3.下面我们来看代码,首先判断订单状态,然后跳转到选择U支付
<?php
namespace app\shop\controller\pay;
use app\common\controller\Fun;
use fast\Http;
use think\Db;
use app\shop\controller\Base;
use app\common\controller\Hm;
/**
* USDT支付类
*/
class Usdtpay extends Base {
public function pay($order,$goods){
$this->redirect("/shop/pay.usdtpay/usdtpay/order_no/" . $order['order_no']);
}
public function usdtPay($order_no){
$usdtpay_info = db::name('pay')->where(['type' => 'usdtpay'])->find();
$usdtpay_info = json_decode($usdtpay_info['value'], true);
$order_info = db::name('order')->where(['order_no' => $order_no])->find();
if(empty($order_info) || $order_info['status'] == '2'){
return "订单不存在或者订单已过期!";
}
$this->assign([
'au_address' => $usdtpay_info['au_address'],
'pay_address' => $usdtpay_info['pay_address'],
'order_no' => $order_info['order_no'],
'amount' => $order_info['money'],
'goods_num' => $order_info['goods_num'],
'email' => $order_info['email'],
'goods_name' => $order_info['goods_name'],
]);
return view(ROOT_PATH . "public/content/template/" . $this->template_name . "/usdtpay.html");
}
}
?>
4.HTML展示的支付类型、TronLink、欧易Web3、imToken等
<div class="mobile-goods" id="mobil" style="display: none">
<div class="mobile-title paymentShow">
请选择您的转账钱包
</div>
<ul id="goods" class="paymentShow" style="padding-left:0">
<li class="goods-item" data-index="33">
<div class="item-img"><img src="/content/template/default/images/TronLink.png" /></div>
<div class="item-content">
<div class="item-name"> TronLink</div>
<div class="item-tag"><div>TRC20</div><div class="other-color">Android/IOS</div></div>
</div>
<input type="radio" />
</li>
<li class="goods-item" data-index="1">
<div class="item-img"><img src="/content/template/default/images/okex.png" /></div>
<div class="item-content">
<div class="item-name"> 欧易Web3钱包</div>
<div class="item-tag"><div>TRC20</div><div class="other-color">Android/IOS</div></div>
</div>
<input type="radio" />
</li>
<li class="goods-item" data-index="2">
<div class="item-img"><img src="/content/template/default/images/imtoken.png" /></div>
<div class="item-content">
<div class="item-name"> imToken</div>
<div class="item-tag"><div>TRC20</div><div class="other-color">Android/IOS</div></div>
</div>
<input type="radio" />
</li>
<li class="goods-item" data-index="3">
<div class="item-img"><img src="/content/template/default/images/tokenpocket.png" /></div>
<div class="item-content">
<div class="item-name"> TokenPocket</div>
<div class="item-tag"><div>TRC20</div><div class="other-color">Android/IOS</div></div>
</div>
<input type="radio" />
</li>
</ul>
<div class="pay-submit paymentShow" id="confirm">
确认支付
</div>
<!-- 二维码容器 -->
<div id="paymentQRCode" style="display: flex; justify-content: center; margin-top: 40px;"></div>
<div id="qrCodeHint" style="text-align: center; color: gray; margin-top: 10px;">
为防止黑U假U混币,请使用钱包扫码支付。付款成功后自动到账,如果未自动到账请联系在线客服。
</div>
<div style="display: none" class="pay-submit" id="payButton" onclick="check()">
点击付款
</div>
</div>
建议使用官方提币:https://tronscan.org/#/contract/TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t/code
欢迎QQ或报交流:3972958687
标签:info,database,Demo,包教包会,2024,usdtpay,Env,get,order From: https://blog.csdn.net/dszushiye/article/details/141832268