在 php 变量中存储以太坊交易 ID(metamask)
Store ethereum transaction id (metamask) in php variable
我不习惯 javascript 我正在使用下面的代码通过 metamask 发送以太坊交易,看起来一切正常,我可以打印交易的哈希值用 document.write 发送,但无法找到一种方法将散列存储在 php 变量中,以便之后在数据库中处理它。
我需要在 php 变量中 'txHash' 的值。非常感谢一些帮助!谢谢
sendEthButton.addEventListener('click', () => {
ethereum
.request({
method: 'eth_sendTransaction',
params: [
{
from: accounts[0],
to: '< - RECEIVING ACCOUNT - >',
value: '0xDE0B6B3A7640000',
},
],
})
.then((txHash) => document.write(txHash))
.catch((error) => console.error);
});
PHP 在 之前 浏览器 JavaScript 执行。它无法与 MetaMask 交互,因为它无权访问扩展的 window.ethereum
对象。
但是,您可以使用 JavaScript fetch() 函数将交易 ID(或任何其他数据)从 JS 发送到 PHP 脚本。
ethereum.request({
// ...
}).then((txHash) => {
fetch('/txIdReceiver.php', {
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
},
body: 'hash=' + txHash,
})
})
由于 x-www-form-urlencoded
内容类型,交易哈希现在在 PHP 脚本的 $_POST["hash"]
变量中可用。
我不习惯 javascript 我正在使用下面的代码通过 metamask 发送以太坊交易,看起来一切正常,我可以打印交易的哈希值用 document.write 发送,但无法找到一种方法将散列存储在 php 变量中,以便之后在数据库中处理它。
我需要在 php 变量中 'txHash' 的值。非常感谢一些帮助!谢谢
sendEthButton.addEventListener('click', () => {
ethereum
.request({
method: 'eth_sendTransaction',
params: [
{
from: accounts[0],
to: '< - RECEIVING ACCOUNT - >',
value: '0xDE0B6B3A7640000',
},
],
})
.then((txHash) => document.write(txHash))
.catch((error) => console.error);
});
PHP 在 之前 浏览器 JavaScript 执行。它无法与 MetaMask 交互,因为它无权访问扩展的 window.ethereum
对象。
但是,您可以使用 JavaScript fetch() 函数将交易 ID(或任何其他数据)从 JS 发送到 PHP 脚本。
ethereum.request({
// ...
}).then((txHash) => {
fetch('/txIdReceiver.php', {
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
},
body: 'hash=' + txHash,
})
})
由于 x-www-form-urlencoded
内容类型,交易哈希现在在 PHP 脚本的 $_POST["hash"]
变量中可用。