首页 文章

$ _POST [$ variable]不起作用[关闭]

提问于
浏览
1

对于输入表单,我需要随机输入名称和ID

我创建了随机值$ token_hash = random

然后输入字段

<input type="hidden" name="' .$token_hash .'" id="' .$token_hash .'" value="some_value">

接下来输入表单是php代码,用于检查从表单中获取的值

echo $_POST[$token_hash] .' $_POST[$token_hash]<br>';

问题是 $_POST[$token_hash] 回显空白值(无值)....

我也试过 $_POST[' .$token_hash .'] 但是不行 .

其他 $_POST 有效,但它们就像 $_POST['some_value']


似乎终于得到了解决方案 . 不明白为什么以前没用 . 如果对别人有用 . 这是解决方案 .

创建随机值$ token_hash = sha1(uniqid($ time_when_form_submitted .'token' . $ _ SERVER [“REMOTE_ADDR”]));

然后创建会话$ _SESSION ['token_hash'] = $ token_hash;

然后将会话传递给输入

echo '<input type="hidden" name="' .$_SESSION['token_hash'] .'" id="' .$_SESSION['token_hash'] .'" value="' .$_SESSION['token'] .'">'

然后从输入中获取会话值 . This code must be above all previos $ token_hash_from_input = $ _SESSION ['token_hash'];

然后用$ _POST [$ token_hash_from_input]获取输入值

5 回答

  • 1

    您希望输入的名称为“token_hash”,值为随机值 .

    <input name="token_hash" value="<?php echo $token_hash; %>" type="hidden" />
    

    现在您可以在表单提交上访问令牌哈希:

    $token_hash = $_POST['token_hash'];
    
  • 0

    您需要类似会话的内容来保持请求中的值,例如

    session_start();
    $_SESSION['token_hash'] = $token_hash;
    

    然后在下一页中检索它

    session_start();
    $token_hash = $_SESSION['token_hash'];
    
  • 0

    @All我假设提问者想要一个随机的帖子字段名称和值


    请注意, $token_hash 的值将在每个请求中更改 . 除非您在会话或数据库中保存该值,否则没有持久性 . 我不知道你到底想要做什么,所以很难给出建议 .

    但是此代码示例可能会显示如何访问随机 $_POST 索引:

    <input type="hidden" name="token_<?php echo uniqid();?>" value="<?php uniqid()?>" />
    

    然后使用foreach获取值:

    foreach($_POST as $key => $value) {
        if(strpos($key, 'token_') !== FALSE) {
            echo 'the token is ' . $value;
        }
    }
    
  • 2

    你需要这样做,

    $_POST["token_hash"]
    

    如果真的发布了 token_hash ,你会得到一个

  • 1

    由于您正在生成随机值,因此您不能指望$ _POST [$ token_hash]可以正常工作 .

    当您发布表单时,您的PHP会随机生成$ token_hash值 . 因此,您应该将随机生成的值放在“值”属性中 .

    <input name="token_hash" value="<?php echo $token_hash; ?>" type="hidden" />
    

    当您发布表单时,可以使用$ _POST ['token_hash']获取它 .

相关问题