如何在按钮点击时调用PHP函数?

时间:2013-02-27 07:56:05

标签: php function textbox steam

我正在尝试设置一个将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

感谢您的帮助!

1 个答案:

答案 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.
}