我网站的主页显示我在xml文件中的所有电影细节(使用foreach
PHP循环和DOM执行),我想为每部电影添加一个删除按钮,所以这应该在循环内完成,问题是我知道如何删除xml节点,给定电影标题,但是,我无法找到一种方法将数据(电影标题)传输到页面我可以确认删除,我尝试了一些无效的解决方案:
- 我在PHP循环中尝试<form method="post" action="foobar">
,<input type="hidden"name="deletion" value="php code giving the movie title">
,但正如您所看到的,每次循环再次运行时它会给出相同的名称,因此它显然不起作用。
- 关于在循环中使用按钮而不是表单,使用onClick事件功能,但我不想在其中包含js
- 我在论坛上寻找解决方案,我发现了cookie,会话,阵列名称......我也不想使用它们,因为它们不是有效的,因为我不能确定转移了哪个电影标题(因为我甚至不知道包含它的变量的名称)
这个问题还有其他解决办法吗?会很棒 PS:我正在手工编写,一位朋友已经告诉我,如果我使用的是框架,那将非常简单,但我想先学习手工编写代码,然后再编译框架。
如果有必要,我当然可以提供代码。
foreach($Movies as $Movie) { ?>
<div class="iodata">
<?php echo "Movie : {$Movie->Title}<br /><br />";
echo "Genre : {$Movie->Genre}<br /><br />";
echo "Year : {$Movie->Year}<br /><br />";
echo "Actors : {$Movie->Cast}<br /><br />";
echo "Director : {$Movie->Director}<br /><br>";
echo "Synopsis : {$Movie->Synopsis}<br /><br />";?>
<form method="post" action="confirm.php">
<input type="hidden" name="deletion" value="<?php echo "$Movie->Title";?>">
<input type="submit" value="delete this">
</form>
</div><br>
<?php }}?>
答案 0 :(得分:1)
也许不是答案,但这并不符合评论。
尝试这些文件,看看它们是否适合您:
<强> movies.php 强>
<?php
$Movies = [
(object) [ 'Title' => 'Foo', 'Genre' => 'Action' ],
(object) [ 'Title' => 'Bar', 'Genre' => 'Drama' ],
];
foreach($Movies as $Movie) { ?>
<div class="iodata">
<?php echo "Movie : {$Movie->Title}<br /><br />";
echo "Genre : {$Movie->Genre}<br /><br />";
echo "Year : {$Movie->Year}<br /><br />";
echo "Actors : {$Movie->Cast}<br /><br />";
echo "Director : {$Movie->Director}<br /><br>";
echo "Synopsis : {$Movie->Synopsis}<br /><br />";?>
<form method="post" action="confirm.php">
<input type="hidden" name="deletion" value="<?php echo "$Movie->Title";?>">
<input type="submit" value="delete this">
</form>
</div><br>
<?php
}
<强> confirm.php 强>
<?php
echo "<pre>" . print_r( $_REQUEST, 1 ) . "</pre>";
如果单击第一个按钮,则应该看到
Array
(
[deletion] => Foo
)