使用PHP,每次单击按钮时从数据库逐个添加元素到文档


<?php if(isset($_POST["btn-add"])):?>
<?php $element = 0; ?>
<?php while($element < 10): ?>
<?php $statement = $pdo->query("SELECT * FROM dorayaki ORDER BY stock DESC LIMIT $element ,1"); ?>
<?php if($row = $statement->fetch()): ?>
<div name ="card" class = "card">
<?php $doraId = $row["id"] ; ?>
<p><?php print_r("Name: "."<a name='doraprice' href='detail.php?id=$doraId'>".$row["name"]."</a>"); ?></p>
<p><?php print_r("Price: "."<a name='doraprice' href='detail.php?id=$doraId'>".$row["price"]."</a>"); ?></p>
<p><?php print_r("Description: "."<a name='doraprice' href='detail.php?id=$doraId'>".$row["desc"]."</a>"); ?></p>
</div>
<?php $element++; ?>
<?php endif; ?>
<?php endwhile; ?>
<?php endif; ?>

<form method="post">
<input type="submit" name="btn-add" value="Add element">
</form>

每次添加元素"是点击,我希望它追加一个'卡'到html页面,如果按钮再次点击,它会添加一个更多的'卡',直到它达到10张卡。当我单击"添加按钮"时,它一次将所有卡片附加到html页面上,而不是一个接一个地附加。如何解决这个问题?

必须将$element保存在cookie或会话变量中:

<?php session_start(); ?>
<?php if(isset($_POST["btn-add"])):?>
<?php $_SESSION["element"] = isset($_SESSION["element"])?0:; ?>
<?php for($i=0;$_SESSION["element"]<$i;$_SESSION["element"]): ?>
<?php $statement = $pdo->query("SELECT * FROM dorayaki ORDER BY stock DESC LIMIT $element ,1"); ?>
<?php if($row = $statement->fetch()): ?>
<div name ="card" class = "card">
<?php $doraId = $row["id"] ; ?>
<p><?php print_r("Name: "."<a name='doraprice' href='detail.php?id=$doraId'>".$row["name"]."</a>"); ?></p>
<p><?php print_r("Price: "."<a name='doraprice' href='detail.php?id=$doraId'>".$row["price"]."</a>"); ?></p>
<p><?php print_r("Description: "."<a name='doraprice' href='detail.php?id=$doraId'>".$row["desc"]."</a>"); ?></p>
</div>
<?php $element++; ?>
<?php endif; ?>
<?php endfor; ?>
<?php endif; ?>

<form method="post">
<input type="submit" name="btn-add" value="Add element">
</form>

最新更新