PHP 代码 HTML

PHP Code with HTML

我正在创建一个使用 CRUD 的简单 MVC 站点。对于删除功能,我有一个按钮,下面的代码是我试图用来将 rowID 发送到控制器进行处理的代码。

我遇到了问题,因为代码没有正确地打印在屏幕上,php 代码和按钮一起被打印出来。

rowID 也没有被传递,我想知道我使用 php 代码的方法是否正确?

代码

<?php
$itemsDAO = new ItemsDAO();
$result=$itemsDAO->getItems();
foreach ( $result as $row )  {
    $uid = $row['id'];
    var_dump($uid);
?>
<form action="index.php" method="post">
<fieldset>
<input id='action' type='hidden' name='action' value='deleteItem' />
<p>
<div class="form-group">
    <div class="controls">
        <input type="hidden" id="fId" name="fId" value="<?php echo $uid; ?>">
        <input type="submit" class="btn btn-success" value="Delete">
    </div>
</div>
</p>
</fieldset>
 </form>

 <?php } ?>

删除函数

    public function getItems () {
    $sqlQuery = "SELECT *";
    $sqlQuery .= " FROM items";

    $result = $this->getDbManager()->executeSelectQuery($sqlQuery );
    return $result;

}

假设您想要为每个结果创建一个删除表单,您需要将 HTML 包装在 foreach 语句中:

<?php
$result=$itemsDAO->getItems();
foreach ($result as $row) {
    $uid = $row['id'];
?>
<form action="index.php" method="post">
<fieldset>
    <input id='action' type='hidden' name='action' value='deleteItem' />
    <p>
    <div class="form-group">
        <div class="controls">
            <input type="hidden" id="fID" name="uid" value="<?php echo $uid; ?>">
            <input type="submit" class="btn btn-success" value="Delete">
        </div>
    </div>
    </p>
</fieldset>
</form>
<?php } ?>

如果你有的话,你可以尝试在 forloop 中替换字符串。

我觉得应该是这样的

foreach ( $this->model->itemList as $row ) 
            $HTMLItemList .= "<li><strong>" . $row ["title"] . ": </strong>" . $row ["price"] . "<blockquote>" . 
                $row ["description"] .  " " . str_replace("value2replace", $row['id'], $buttons) . ""  . $update . "</blockquote></li>";

然后您将表格更改为以下

<form action="index.php" method="post">
<fieldset>
    <input id='action' type='hidden' name='action' value='deleteItem' />
    <div class="form-group">
        <div class="controls">
            <input type="hidden" id="fId" name="fId"
                value="value2replace"> <input type="submit"
                class="btn btn-success" value="Delete" />
        </div>
    </div>
</fieldset>