Php openssl+;令牌的随机int,当涉及到表单操作时出现问题

Php openssl+;令牌的随机int,当涉及到表单操作时出现问题,php,antiforgerytoken,Php,Antiforgerytoken,我有这样一个标记函数: public static function create() { $int = random_int(8, 64); $ssl = openssl_random_pseudo_bytes(32); $base64 = base64_encode($ssl); return Session::put(Config::get('session/token_name'), trim($base64, '='));

我有这样一个标记函数:

public static function create() {
        $int = random_int(8, 64);
        $ssl = openssl_random_pseudo_bytes(32);
        $base64 = base64_encode($ssl);
        return Session::put(Config::get('session/token_name'), trim($base64, '='));
    }
我的标记功能正在工作,当我现在在多个
表单上尝试它时,问题就出现了。注意:同一页

这是我的表格(例如,我只更改了名称,但这在我的代码上):

}

现在的问题是,当我尝试单击按钮时,sample1-sample3my
token::check
为false,但只有sample4
token::check
为true。似乎只有最后一个
表单
才有正确的
标记
。因此,我正在寻求帮助,了解如何在
token::check
下实现另一个示例(1-3),顺便说一句,
md5(uniqid())
标记函数正在工作

<form method="post">
            <input type="hidden" name="t_sample1" value="<?php echo Token::make(); ?>">
            <button name="btn1">sample1</button>
        </form>
        <form method="post">
            <input type="hidden" name="t_sample2" value="<?php echo Token::make(); ?>">
            <button name="btn2">sample2</button>
        </form>
        <form method="post">
            <input type="hidden" name="t_sample3" value="<?php echo Token::make(); ?>">
            <button name="btn3">sample3</button>
        </form>
        <form method="post">
            <input type="hidden" name="t_sample4" value="<?php echo Token::make(); ?>">
            <button name="btn4">sample4</button>
        </form>
if(Input::exists()) {
if(Token::check(Input::get('t_sample1'))) {
    $echo = 'sample1';
}
if(Token::check(Input::get('t_sample2'))) {
    $echo = 'sample2';
}
if(Token::check(Input::get('t_sample3'))) {
    $echo = 'sample3';
}
if(Token::check(Input::get('t_sample4'))) {
    $echo = 'sample4';
}