【问题标题】:php get variable $_getphp获取变量$_get
【发布时间】:2013-01-26 14:24:42
【问题描述】:

userfile.php:

<form action="userrename.php" method="get">
      <input type="hidden" name="rename" value="<?= $filecode?>">
      <input type="submit" name="rename" id="bdelete" value="Rename"><br><br>
</form>

当我点击重命名按钮时,得到:userrename.php?rename=pev8nERsJolwrCHyfQZujI1QHMDQHQX6V0ZMtQhsDi1aRgPeJsR&amp;rename=rename

用户名.php:

<?php 
if(empty($_GET['rename'])) 
    echo "No GET variables"; 
else 
    echo $_GET['rename']; //here result is : rename
?> 

我必须在 if 语句中只得到这个 pev8nERsJolwrCHyfQZujI1QHMDQHQX6V0ZMtQhsDi1aRgPeJsR 而不是 rename。我怎么能做到这一点,任何人都有 idei 或知道我对此感到困惑

【问题讨论】:

    标签: php get


    【解决方案1】:

    删除名称

    <input type="submit" name="rename" id="bdelete" value="Rename">
    

    或将其名称更改为 name="xxxx"

    【讨论】:

      【解决方案2】:

      您的两个元素输入都使用相同的名称(name="rename"),最简单的解决方案是更改提交输入的名称。如果您的表单上只有 1 个提交按钮,您可以完全删除 name 属性。只有具有 name 属性的元素才会在提交表单时传递它们的值,所以如果你删除它,它仍然是一个有效的 HTML,它的值将不会被提交..

      【讨论】:

        【解决方案3】:

        您可以使用以下方法在 GET 中获取文件代码并在 POST 中获取重命名值:

        <form action="userrename.php?rename=<?= $filecode?>" method="POST">
             <input type="submit" name="rename" id="bdelete" value="Rename"><br><br>
        </form>
        

        【讨论】:

        • 这是最好的...感谢支持
        • 值不通过的原因是隐藏输入和提交按钮同名!您通过创建同名的 GET 和 POST 值来规避它 - 这不好!特别是如果提交按钮的名称无关紧要。
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2018-01-12
        • 1970-01-01
        • 1970-01-01
        • 2013-05-15
        • 2019-11-30
        • 2012-03-30
        • 2019-07-25
        相关资源
        最近更新 更多