在没有表单的情况下将数据发送到另一个页面


Sending data to another page without a form

我被告知可以在没有POST功能的情况下发送数据。我想弄清楚的是,我如何摆脱桌子周围的表格,并将数据发送到我的名为"编辑产品"的页面。

除了数据,我希望用户也被发送到那里,就像表单的动作属性一样

到目前为止,我的结构是这样的:

<?php
        $stmt = $dbc->query("SELECT `id`,`first`,`last`,`product` FROM users");
        $stmt->setFetchMode(PDO::FETCH_ASSOC);
        while($row = $stmt->fetch()) {
        ?>
        <form method="POST" action="edit-product">
            <tr>
                <td><?php echo $row['id'];?>"</td>
                <td><?php echo $row['first'];?></td>
                <td><?php echo $row['last'];?></td>
                <td><?php echo $row['product'];?></td>
                <input name="id" type="hidden" value="<?php echo $row['id'];?>" readonly>
                <input name="first" type="hidden" value="<?php echo $row['first'];?>">
                <input name="last" type="hidden" value="<?php echo $row['last'];?>">
                <input name="product" type="hidden" value="<?php echo $row['product'];?>">
                <td><input name="save" type="submit" value="Save"></td>
                <td><div class="delete-class" name="delete" id="<?php echo $row['id']; ?>">Delete</div></td>
                <td><input name="edit" type="submit" value="Edit"></td>
            </tr>
        </form>
        <?php } ?>
        </tbody>
    </table>

在我的编辑产品页面中,我收到的数据如下:

$id = $_POST['id'];
$first = $_POST['first'];
$last = $_POST['last'];
$product = $_POST['product'];

我怎么能这么做?

您可以使用带锚点的编辑按钮。

  <table>
     <tbody>
     <?php
        $stmt = $dbc->query("SELECT `id`,`first`,`last`,`product` FROM users");
        $stmt->setFetchMode(PDO::FETCH_ASSOC);
        while($row = $stmt->fetch()) {
        ?>       
            <tr>
                <td><?php echo $row['id'];?>"</td>
                <td><?php echo $row['first'];?></td>
                <td><?php echo $row['last'];?></td>
                <td><?php echo $row['product'];?></td>                    
                <td><input name="save" type="submit" value="Save"></td>
                <td><div class="delete-class" name="delete" id="<?php echo $row['id']; ?>">Delete</div></td>
                <td><a href="/edit-product?id=<?php echo $row['id']; ?>&first=<?php echo $row['first'];?>&last=<?php echo $row['last'];?>&product=<?php echo $row['product'];?>">Edit</a></td>
            </tr>      
        <?php } ?>
        </tbody>
    </table>

你可以从编辑产品页面中获取url值。像

$id = $_GET['id'];
$first = $_GET['first'];
$last = $_GET['last'];
$product = $_GET['product'];

试试这个,不用任何形式的帖子。