仅在第一个消息中从表单中打印出表单标签

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了仅在第一个消息中从表单中打印出表单标签相关的知识,希望对你有一定的参考价值。

我的表单正在为我的循环中的每条消息打印。此表单非常重要,因为它是允许用户收藏某些消息的表单。问题在于,对于第一条消息,该表格没有被打印,但是对于所有其他消息,其被正确打印,并打印了表格内的按钮。仅消息的第一个实例未正确打印且超出按钮范围。

我的htmlphp

        $result = $db->prepare("SELECT * FROM messages WHERE to_id=? ORDER BY msgid DESC");
        $result->bindValue(1,$user_id);
        $result->execute();
     while ($row = $result->fetch())
        
            $msg_id=$row['msgid'];
            $from_id = $row['from_id'];
            $blockusername=$_SESSION['active_user'];

            $to_id = $row['to_id'];
            $d=$row['date'];

        //start recieved messages 
        if($_GET['a'] == "recieved") 
        
            $msg_id=$row['msgid'];


            ?>



<div Class="inside-card" <td>
    <div class="msg-body">
        <p><?php echo $row['text']; ?></p>

    </div>

    <div class="msg-action">

<form class='favourite-form' name='favform' method='post' > <!-- here is the form that should be printed for each message propertly, but is not being properly printed for the first message-->
      <a class="msg-icon " href="<?php echo "reply?message=" . $row['msgid'] . ""; ?>"></a>
       <button type="submit" name="fav"  value="<?php echo $row['msgid']; ?>" > <i class="far fa-heart" ></i></a></button>


</form>

        <span class="msg-icon action-toggler" style="float:right;">
           <i class="fas fa-ellipsis-v fa-lg"></i>
            <ul class="action-dropdown">

                <li>
                    <a class="msg-icon " onclick="openReportModal('<?php echo $row['msgid'];?>','<?php echo $row['text']?>')">
                        Report

                    </a>


                </li>

                <li>

                    <a class="msg-icon " onclick="openBlockModal('<?php echo $from_id;?>','<?php echo $blockusername?>')" >
                        Block
                    </a>

                </li>

                <li>
                    <a class="msg-icon" onclick="openDeleteModal(<?php echo $row['msgid'] ?>)" >Delete</a>
                </li>


            </ul>



        </span>

        <span class="msg-icon"
            style="float:right; margin-right:12px; font-size:12px;"><?php echo timeAgo($d); ?></span>

    </div>

    </td>
    </tr>

</div>

什么原因导致表单仅对第一条消息超出范围,我正在努力理解此问题,因为不应该有任何问题?

请参考下图,以查看开发人员工具中元素的代码[Code from elements tab]1

答案

我发现了问题,有一个表格标签导致表格超出了第一条消息的范围,因为表格标签就在循环之前。

以上是关于仅在第一个消息中从表单中打印出表单标签的主要内容,如果未能解决你的问题,请参考以下文章

JS 输出消息打印在表单中的 div 标签上

Mailchimp 一个列表的多个订阅表格

Jquery 仅在第二次点击时验证提交表单

表单未验证角度 2 中 [ngClass] 的使用

如何让我的表单保存对标签的更改?

from表单中这么改变vue页面中的数字变为汉字