【问题标题】:How to isset a submit button generated in a while loop, outside the loop?如何在循环外设置在while循环中生成的提交按钮?
【发布时间】:2020-04-08 18:50:56
【问题描述】:

你们中有人知道如何在循环之外设置提交按钮吗?

当我在循环外设置时,按钮的名称 = 所有 id 消息(因此我的 isset 不起作用)
而当我在循环内设置时,按钮的名称 = 一个 id 消息(因此,在isset里面工作正常)。

但是,我需要在循环之外设置提交按钮。你能帮帮我吗?

$conn = new PDO("mysql:host=localhost;dbname=likes;charset=utf8", "root", "");

$resultats = $conn->prepare("SELECT * FROM message ORDER BY date DESC LIMIT 50");
$resultats->execute();

while (($messages = $resultats->fetch())!== false){ 

?>

<form action="" method="POST">
    <button type="submit" name="<?php echo $messages['idmessage']; ?>">Likes</button>
</form>

<?php
}
?> 

<?php

if(isset($_POST[$messages['idmessage']])){
echo $messages['idmessage'];
}

?> 

【问题讨论】:

    标签: php while-loop submit-button


    【解决方案1】:

    我会像这样为每个表单添加一个type='hidden'

    <form action="" method="POST">
        <input type='hidden' name='message_id' value='<?php echo $messages['idmessage']; ?>' />
        <button type="submit" name="like_button">Likes</button>
    </form>
    
    
    <?php
    if(isset($_POST['like_button'])) {
       #get the message id for the form that was submitted
       echo isset($_POST['message_id']) ? 'Message ID is '. $_POST['message_id'] : 'no message id found. Kill script';
    }
    
    ?>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-09-03
      • 2018-03-19
      • 1970-01-01
      • 1970-01-01
      • 2012-11-28
      • 2017-10-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多