单击超链接后如何清除URL_GET
How to clear the URL_GET after clicking hyperlink
当我按下 hyperlink
<.a href="template_edit.php?templateId=...&bbId=...&editReq=...">
<.img src="...">
<./a>
它将刷新页面,因为我已经在 'template_edit.php?templateId=...'
但是当刷新完成并且查询已成功更新时,我希望 $_GET['bbId'] 和 $_GET['editReq'] 将被删除而无需再次刷新页面。
希望大家能帮帮我。
如果您需要更多信息来帮助我,请说出来。
谢谢。
[EDIT-1]
步骤:
1:我有一个 hyperlink,里面有一个 link 到一个包含 3 个 GET 的页面。
2:然后它刷新页面,因为它已经在该页面上,并且 URL GET 已填写。
3: 然后,当将更新数据库中的内容的查询成功完成时,它需要删除 3 个 GET 中的 2 个 GET,而不刷新页面!
[EDIT-2]
更多信息可能会派上用场。
我现在的代码是这样的。
//This is the update query
if (!empty($_GET['editReq'])) {
mysql_query("
UPDATE formbbformtemplate
SET formRequired = '".$_GET['editReq']."'
WHERE formTemplateId = ".$_GET['templateId']."
AND formBuildingBlockId = ".$_GET['bbId']."
") or die(__LINE__.": ".mysql_error());
}
//The hyperlink / image button.
<a href="template_edit.php?templateId=<?=$templateId?>&bbId=<?=$vragen['formBuildingBlockId']?>&editReq=off">
<img style="opacity: .25;" src="<?=IMG?>/cross.png" title="Niet Verplicht!">
</a>
//Below here there needs to come the SCRIPT
<script>
//script
</script>
您可以通过 jquery 在您的 template_edit.php
上完成,例如
$(document).ready(function(){
var url = window.location.href;
if(url.indexOf('&') !== -1) //This will check if the url contains more than 1 GET.
{
url = url.slice( 0, url.indexOf('&') ); // This will keep the first GET
window.location.href = url;
}
});
例如,如果页面请求是初始页面请求或刷新页面请求(点击超链接后),您能否检查 php 代码。如下所示:
//test for refresh
if (isset($_GET['bbId']) && isset($_GET['editReq']) ) {
//create your anchor tag here without 'bbId' and 'editReq'
<a href="template_edit.php?templateId=<?=$templateId?>">
<img style="opacity: .25;" src="<?=IMG?>/cross.png" title="Niet Verplicht!">
</a>
} // else initial page request
else {
//create your anchor tag here as usual
//The hyperlink / image button.
<a href="template_edit.php?templateId=<?=$templateId?>&bbId=<?=$vragen['formBuildingBlockId']?>&editReq=off">
<img style="opacity: .25;" src="<?=IMG?>/cross.png" title="Niet Verplicht!">
</a>
}
我还没有测试过上面的内容,但它可以工作:-)
当我按下 hyperlink
<.a href="template_edit.php?templateId=...&bbId=...&editReq=...">
<.img src="...">
<./a>
它将刷新页面,因为我已经在 'template_edit.php?templateId=...'
但是当刷新完成并且查询已成功更新时,我希望 $_GET['bbId'] 和 $_GET['editReq'] 将被删除而无需再次刷新页面。
希望大家能帮帮我。
如果您需要更多信息来帮助我,请说出来。
谢谢。
[EDIT-1]
步骤:
1:我有一个 hyperlink,里面有一个 link 到一个包含 3 个 GET 的页面。
2:然后它刷新页面,因为它已经在该页面上,并且 URL GET 已填写。
3: 然后,当将更新数据库中的内容的查询成功完成时,它需要删除 3 个 GET 中的 2 个 GET,而不刷新页面!
[EDIT-2]
更多信息可能会派上用场。
我现在的代码是这样的。
//This is the update query
if (!empty($_GET['editReq'])) {
mysql_query("
UPDATE formbbformtemplate
SET formRequired = '".$_GET['editReq']."'
WHERE formTemplateId = ".$_GET['templateId']."
AND formBuildingBlockId = ".$_GET['bbId']."
") or die(__LINE__.": ".mysql_error());
}
//The hyperlink / image button.
<a href="template_edit.php?templateId=<?=$templateId?>&bbId=<?=$vragen['formBuildingBlockId']?>&editReq=off">
<img style="opacity: .25;" src="<?=IMG?>/cross.png" title="Niet Verplicht!">
</a>
//Below here there needs to come the SCRIPT
<script>
//script
</script>
您可以通过 jquery 在您的 template_edit.php
上完成,例如
$(document).ready(function(){
var url = window.location.href;
if(url.indexOf('&') !== -1) //This will check if the url contains more than 1 GET.
{
url = url.slice( 0, url.indexOf('&') ); // This will keep the first GET
window.location.href = url;
}
});
例如,如果页面请求是初始页面请求或刷新页面请求(点击超链接后),您能否检查 php 代码。如下所示:
//test for refresh
if (isset($_GET['bbId']) && isset($_GET['editReq']) ) {
//create your anchor tag here without 'bbId' and 'editReq'
<a href="template_edit.php?templateId=<?=$templateId?>">
<img style="opacity: .25;" src="<?=IMG?>/cross.png" title="Niet Verplicht!">
</a>
} // else initial page request
else {
//create your anchor tag here as usual
//The hyperlink / image button.
<a href="template_edit.php?templateId=<?=$templateId?>&bbId=<?=$vragen['formBuildingBlockId']?>&editReq=off">
<img style="opacity: .25;" src="<?=IMG?>/cross.png" title="Niet Verplicht!">
</a>
}
我还没有测试过上面的内容,但它可以工作:-)