USDT自动上分是通过官方 https://api.trongrid.io 查询接口实现的
在给一个客户做大富彩票自动充值的时候保存的代码,分享给有需要的朋友,不用再去找网上那些带后门的程序了,当然前提是 你得会PHP
只是一个前端充值自动查询并处理的代码,仅供参考,需要前端传参(订单号)后才能进行处理,同样数据库字段也得处理
代码如下:
<spanclass="hljs-function"><spanclass="hljs-keyword">function</span> <spanclass="hljs-title">timibbs_usdtautopay</span>(<spanclass="hljs-params"><spanclass="hljs-variable">$apiparam</span>=<spanclass="hljs-keyword">array</span>(<spanclass="hljs-params"></span>)</span>)</span>{<spanclass="hljs-variable">$apiparam</span> = <spanclass="hljs-built_in">self</span>::<spanclass="hljs-title function_ invoke__">_cheacktoken</span>(<spanclass="hljs-variable">$apiparam</span>);<spanclass="hljs-keyword">if</span>(!<spanclass="hljs-variable">$apiparam</span>[<spanclass="hljs-string">'sign'</span>])<spanclass="hljs-keyword">return</span> <spanclass="hljs-variable">$apiparam</span>;<spanclass="hljs-variable">$trano</span> = <spanclass="hljs-variable">$apiparam</span>[<spanclass="hljs-string">'trano'</span>];<spanclass="hljs-variable">$payorder</span> = <spanclass="hljs-title function_ invoke__">M</span>(<spanclass="hljs-string">'recharge'</span>)-><spanclass="hljs-title function_ invoke__">where</span>([<spanclass="hljs-string">'trano'</span>=><spanclass="hljs-variable">$trano</span>,<spanclass="hljs-string">'state'</span>=><spanclass="hljs-number">0</span>])-><spanclass="hljs-title function_ invoke__">find</span>();<spanclass="hljs-comment">//查询平台收款地址</span><spanclass="hljs-variable">$usdtpayaddress</span> = <spanclass="hljs-title function_ invoke__">M</span>(<spanclass="hljs-string">'payset'</span>)-><spanclass="hljs-title function_ invoke__">field</span>(<spanclass="hljs-string">"ftitle"</span>)-><spanclass="hljs-title function_ invoke__">where</span>(<spanclass="hljs-string">"isonline=-1 AND state=1 AND paytype='USDT'"</span>)-><spanclass="hljs-title function_ invoke__">find</span>();<spanclass="hljs-variable">$to_address</span> = <spanclass="hljs-variable">$usdtpayaddress</span>[<spanclass="hljs-string">'ftitle'</span>];<spanclass="hljs-comment">//获取地址交易记录</span><spanclass="hljs-variable">$url</span> = <spanclass="hljs-string">"https://api.trongrid.io/v1/accounts/<span class="hljs-subst">$to_address</span>/transactions/trc20?limit=10&contract_address=TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t"</span>;<spanclass="hljs-variable">$getData</span> = <spanclass="hljs-title function_ invoke__">file_get_contents</span>(<spanclass="hljs-variable">$url</span>);<spanclass="hljs-variable">$jsonData</span> = <spanclass="hljs-title function_ invoke__">json_decode</span>(<spanclass="hljs-variable">$getData</span>,<spanclass="hljs-literal">true</span>);<spanclass="hljs-comment">//循环查询链上记录</span><spanclass="hljs-keyword">foreach</span> (<spanclass="hljs-variable">$jsonData</span>[<spanclass="hljs-string">"data"</span>] <spanclass="hljs-keyword">as</span> <spanclass="hljs-variable">$k</span>=><spanclass="hljs-variable">$v</span>){<spanclass="hljs-comment">//这里注释掉了,单一订单查询没必要循环所有订单</span><spanclass="hljs-comment">// foreach ($payorder as $a=>$b){</span><spanclass="hljs-variable">$from_address</span> = <spanclass="hljs-variable">$payorder</span>[<spanclass="hljs-string">"from_address"</span>];<spanclass="hljs-variable">$usdtnum</span> = <spanclass="hljs-variable">$payorder</span>[<spanclass="hljs-string">"usdtnum"</span>];<spanclass="hljs-comment">//转账时间必须大于创建订单时间</span><spanclass="hljs-keyword">if</span>(<spanclass="hljs-variable">$v</span>[<spanclass="hljs-string">'block_timestamp'</span>]/<spanclass="hljs-number">1000</span> > <spanclass="hljs-variable">$payorder</span>[<spanclass="hljs-string">'oddtime'</span>]){<spanclass="hljs-comment">//转账地址、数量完全匹配</span><spanclass="hljs-keyword">if</span>(<spanclass="hljs-variable">$v</span>[<spanclass="hljs-string">'to'</span>] == <spanclass="hljs-variable">$to_address</span> && <spanclass="hljs-variable">$v</span>[<spanclass="hljs-string">'from'</span>] == <spanclass="hljs-variable">$from_address</span> && <spanclass="hljs-variable">$v</span>[<spanclass="hljs-string">'value'</span>]/<spanclass="hljs-number">1000000</span> == <spanclass="hljs-variable">$usdtnum</span>){<spanclass="hljs-variable">$userinfo</span> = <spanclass="hljs-title function_ invoke__">M</span>(<spanclass="hljs-string">'member'</span>)-><spanclass="hljs-title function_ invoke__">where</span>([<spanclass="hljs-string">'id'</span>=><spanclass="hljs-variable">$payorder</span>[<spanclass="hljs-string">'uid'</span>]])-><spanclass="hljs-title function_ invoke__">find</span>();<spanclass="hljs-variable">$add</span>[<spanclass="hljs-string">'oldaccountmoney'</span>] = <spanclass="hljs-variable">$userinfo</span>[<spanclass="hljs-string">"balance"</span>];<spanclass="hljs-variable">$add</span>[<spanclass="hljs-string">'newaccountmoney'</span>] = <spanclass="hljs-variable">$userinfo</span>[<spanclass="hljs-string">"balance"</span>] + <spanclass="hljs-variable">$payorder</span>[<spanclass="hljs-string">'amount'</span>];<spanclass="hljs-variable">$add</span>[<spanclass="hljs-string">'state'</span>] = <spanclass="hljs-number">1</span>;<spanclass="hljs-variable">$add</span>[<spanclass="hljs-string">'transaction_id'</span>] = <spanclass="hljs-variable">$v</span>[<spanclass="hljs-string">"transaction_id"</span>];<spanclass="hljs-comment">//哈希值</span><spanclass="hljs-title function_ invoke__">M</span>(<spanclass="hljs-string">'recharge'</span>)-><spanclass="hljs-title function_ invoke__">where</span>([<spanclass="hljs-string">'trano'</span>=><spanclass="hljs-variable">$trano</span>])-><spanclass="hljs-title function_ invoke__">setField</span>(<spanclass="hljs-variable">$add</span>);<spanclass="hljs-comment">//如果上链有数据了就增加余额</span><spanclass="hljs-title function_ invoke__">M</span>(<spanclass="hljs-string">'member'</span>)-><spanclass="hljs-title function_ invoke__">where</span>([<spanclass="hljs-string">'id'</span>=><spanclass="hljs-variable">$payorder</span>[<spanclass="hljs-string">'uid'</span>]])-><spanclass="hljs-title function_ invoke__">setInc</span>(<spanclass="hljs-string">'balance'</span>,<spanclass="hljs-variable">$payorder</span>[<spanclass="hljs-string">'amount'</span>]);<spanclass="hljs-comment">//返回</span><spanclass="hljs-variable">$return</span>[<spanclass="hljs-string">'sign'</span>] = <spanclass="hljs-literal">true</span>;<spanclass="hljs-variable">$return</span>[<spanclass="hljs-string">'state'</span>] = <spanclass="hljs-number">1</span>;<spanclass="hljs-variable">$return</span>[<spanclass="hljs-string">'message'</span>] = <spanclass="hljs-string">'充值成功!'</span>;<spanclass="hljs-keyword">return</span> <spanclass="hljs-variable">$return</span>;<spanclass="hljs-keyword">exit</span>;}}<spanclass="hljs-keyword">else</span>{<spanclass="hljs-variable">$return</span>[<spanclass="hljs-string">'sign'</span>] = <spanclass="hljs-literal">false</span>;<spanclass="hljs-variable">$return</span>[<spanclass="hljs-string">'message'</span>] = <spanclass="hljs-string">'未发现订单!'</span>;<spanclass="hljs-keyword">return</span> <spanclass="hljs-variable">$return</span>;}<spanclass="hljs-comment">// }</span>}}

