我正在尝试设置一个将Steam用户ID转换为身份验证ID的网站。它会要求访问者输入他们的常规Steam ID,然后点击一个按钮将其转换为auth ID。 Steam为我们提供了从一种类型到另一种类型的ID转换功能。
用于转换ID的Steam功能:
function convert_steamid_to_accountid($steamid)
{
$toks = explode(":", $steamid);
$odd = (int)$toks[1];
$halfAID = (int)$toks[2];
$authid = ($halfAID*2) + $odd;
echo $authid;
}
下面是我尝试设置一个获取用户输入的基本HTML页面,然后使用该函数将该输入转换为其他内容。
<INPUT TYPE = "Text" VALUE ="ENTER STEAM:ID" NAME = "idform">
<?PHP
$_POST['idform'];
$steamid = $_POST['idform'];
?>
此外,这是默认的Steam用户ID:
STEAM_0:1:36716545
感谢您的帮助!
答案 0 :(得分:1)
如果您可以将其分成两个单独的文件,那么就这样做。
foo.html
<form method="POST" action="foo.php">
<input type="text" value="ENTER STEAM:ID" name="idform" />
<input type="submit" />
</form>
foo.php
<?php
function convert_steamid_to_accountid($steamid)
{
$toks = explode(":", $steamid);
$odd = (int)$toks[1];
$halfAID = (int)$toks[2];
$authid = ($halfAID*2) + $odd;
echo $authid;
}
$id = $_POST['idform'];
convert_steamid_to_accountid($id)
?>
如果您没有选择制作两个单独的文件,可以将php代码添加到'foo.html'文件中,并使表单提交到同一个文件。但是,如果您这样做,请检查文件是否第一次被请求,或者是否因为表单已提交而被请求,然后再调用convert_steamid_to_accountid()函数。 您可以通过以下方式执行此操作:
if ($_SERVER['REQUEST_METHOD']=='POST'){
// your php code here that should be executed when the form is submitted.
}