【问题标题】:Input type hidden value not displaying in PHP while Loop输入类型隐藏值未在 PHP 中显示而循环
【发布时间】:2018-11-25 12:35:37
【问题描述】:

我正在尝试使用 PHP while 循环从隐藏的输入类型中获取值,以检索结果页面上的数据。 除了输入字段中的值外,一切正常。

这是我的代码

        <?php 
        $sql = "SELECT id,title FROM data ORDER BY id DESC LIMIT 10";
        $result = mysqli_query($conn, $sql);
        while ($row = mysqli_fetch_array($result)) {
        $tid = $row['id'];
        $title = $row['title'];
        ?>  
        <li>
            <div class="opt-text-w3layouts">
            <form action="/results.php" method="POST">
                <span style="padding:0 5px 10px 0px; word-wrap: break-word;"> 
                    <input type="hidden" name="id" value="<?php $tid;?>">
                    <button type="submit"><?php echo $title; ?></button>
                </span>
            </form>
            </div>          
        </li>
        <?php } ?>

现在的问题是当我点击提交按钮时,我会进入结果页面并出现以下错误

Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result

当我在 Firefox 上检查元素时,它会显示空白值

但是当我手动分配一些随机 id 编号时,例如:1,2,3 到 value 字段,然后在结果页面上一切正常,所以问题只是没有从 PHP while 循环中显示值。

我错过了什么?

【问题讨论】:

    标签: php forms input


    【解决方案1】:

    您只是缺少echo

    <?php echo $tid;?>
    

    【讨论】:

    • Opss 我花了 1 个小时来调查这个问题,是的,我错过了 echo 部分,无论如何感谢 @Don't Panic 它现在可以工作了。
    • @Ken 很高兴为您提供帮助,欢迎来到 Stack Overflow。如果此答案或任何其他答案解决了您的问题,请将其标记为已接受。
    • 是的,我只是这样做了,因为接受答案需要 8 分钟,所以我就这样做了,如果您认为我已经为这个问题付出了努力,那么您可以投票支持我的问题并再次感谢.
    猜你喜欢
    • 2013-12-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-16
    • 2016-01-18
    • 1970-01-01
    • 2013-07-02
    • 2019-02-26
    相关资源
    最近更新 更多