在我提交表单并用它完成一些php之后,我将如何刷新页面。到目前为止,我的形式和PHP。
<form class="removeform"action='peteadd.php'method='post' enctype='multipart/form-
data' name='image_remove_form' >
<?php
include '../inc/connect.php';
$q = "SELECT * FROM gallerythumbs WHERE gallery = 1";
if($r = mysql_query($q)){
while($row=mysql_fetch_array($r)){
echo "<div class='thumb'>",
"<input type='checkbox' name='remove[{$row['id']}]'>",
"<label for='Remove'><span class='text'>Remove</span></label>",
"<br />",
"<img class='thumbnail' src='{$row['filename']}'
alt='{$row['description']}' />",
"</div>";
}
}
else{
echo mysql_error();
}
?>
<input type='submit' name='submit' value='Remove' />
</form>
</div>
<?php
include '../inc/connect.php';
//if delete was checked, delete entries from both tables
if(isset($_POST['remove'])){
$chk = (array) $_POST['remove'];
$p = implode(',',array_keys($chk));
$t = mysql_query("SELECT * FROM galleryimages WHERE id IN ($p)");
$r = mysql_query("SELECT * FROM gallerythumbs WHERE id IN ($p)");
$url=mysql_fetch_array($t);
$image=$url['filename'];
$url2=mysql_fetch_array($r);
$image2=$url2['filename'];
if ($t){
unlink($image);
unlink($image2);
$q = mysql_query("DELETE FROM galleryimages WHERE id IN ($p)");
$s = mysql_query("DELETE FROM gallerythumbs WHERE id IN ($p)");
}
else{
echo "<span class='text'>
There has been a problem, go back and try again.
<br />
<a href='peteadd.php'>Back</a>
</span>";
}
}
else{
echo "<span class='title'>
There are no images in the gallery
<br />
<a href='peteadd.php'>Add Images</a>
</span>";
}
?>
这用于显示一些保存在mysql中的缩略图,上面带有删除复选框。当我检查它们然后提交从direcotries和mysql表中删除的表单确定,但是如何刷新页面以便删除很明显?
感谢您寻找
答案 0 :(得分:1)
您所描述的内容听起来就像是在显示您的页面,并且在其中您运行了一些额外的代码 - 比如删除 - 所以当您发布表单时,最终会从数据库中提取图像然后将其删除
你应该首先运行你的逻辑,然后才显示页面 - 这样你将首先删除你的记录,然后当从数据库获取数据时,它将得到正确的数据(没有记录已被删除)
任何其他的灵魂只会是绕过最初不存在的问题的黑客方式:)
答案 1 :(得分:0)
您无法使用PHP直接刷新页面,但您可以回显像这样的刷新标记
echo '<meta http-equiv="refresh" content="0">'
,或者你可以用javascript来完成,比如
location.reload(true);