Php 如何通过按键从列表中传递变量
我的目标是读取目录,将项目添加到列表,添加单个按钮以删除文件,然后添加代码以删除所选文件。删除不是问题,但传递文件是有问题的 以下是我尝试过的:Php 如何通过按键从列表中传递变量,php,html,file,Php,Html,File,我的目标是读取目录,将项目添加到列表,添加单个按钮以删除文件,然后添加代码以删除所选文件。删除不是问题,但传递文件是有问题的 以下是我尝试过的: <?php if ($handle = opendir('userStorage/Storage1')) { while (false !== ($file = readdir($handle))) { if ($file != "." && $file != &qu
<?php
if ($handle = opendir('userStorage/Storage1')) {
while (false !== ($file = readdir($handle)))
{
if ($file != "." && $file != "..")
{
$filelocation = "userStorage/Storage1/$file";
$thelist .= '<p1>'.$file.'</p1><form method="post">
<button>Download</button>
<button type="submit" name="delete'.$file.'" value="Submit" >Delete</button><br></form>';
}
}
closedir($handle);
}
?>
<?php
if($_POST["delete'.$file.'"] == "Submit" ) {
echo "File to be deleted: $file";
}
?>
试试这个
<?php
if (isset($_POST['delete'])) {
unlink(__DIR__ . DIRECTORY_SEPARATOR . $_POST['file']);
}
if (isset($_POST['download'])) {
header('Location: ' . $_POST['file']);
}
$files = array_diff(scandir(__DIR__), ['..', '.']);
foreach ($files as $file) {
echo "
<p>{$file}</p>
<form action='' method='POST'>
<input type='hidden' name='file' value='{$file}'>
<input type='submit' name='download' value='Download'>
<input type='submit' name='delete' value='Delete'>
</form>
";
}
您希望通过$\u POST[“删除“.$file.”]
捕获什么?这只是一个值,而在循环中构建表时,使用不同的n
值。你需要重新构造你的HTML。如何触发删除操作?这是常规表单提交还是AJAX?请指定您遇到的问题。您只需添加一个类型为hidden的输入,并为其命名为$file,然后您就可以使用$\u POSTHi获得值。这非常有效,谢谢,祝贺您的第一个答案!谢谢你很高兴看到这对你有帮助