我需要的是这个
我的PHP代码是:
class logout{
public function __construct(){
session_unset();
session_destroy();
session_write_close();
setcookie(session_name(),'',0,'/');
session_regenerate_id(true);
}
}
if(!empty($_POST['logout'])){
$object=new logout();
}
为此我使用的是html代码:
<ul id="navlist">
<li><a href="index.php">Home</a></li>
<li><a href="dates.php">Dates</a></li>
<li><a href="candidate.php">Candidates</a></li>
<li><a href="database.php">Database</a></li>
<li><a href="password.php">Change Password</a></li>
<li><a href='logout.php'>Log Out</a></li>
</ul>
注销我需要从我读过的主页提交javascript表单提交。
如果我喜欢这样:
<li><a href=''><form method="post"><input type='submit' value='Log Out' name='logout' style="border:0px;" /></form></a></li>
我得到这样的东西:
如何解决问题(我是否使用javascript如何提交表单?)
答案 0 :(得分:3)
如果加载了jQuery,可以通过ajax完成。这样您就可以保持导航样式。
<li><a href="#" class="log-out">Log Out</a></li>
$('.log-out').click(function() {
$.post('logout.php');
});
的ajaxs简写
答案 1 :(得分:2)
我认为您不需要发布此内容,简化它...更改此行以使用$_GET
if(!empty($_GET['logout'])){
$object=new logout();
}
并使用?logout=true
<ul id="navlist">
<li><a href="index.php">Home</a></li>
<li><a href="dates.php">Dates</a></li>
<li><a href="candidate.php">Candidates</a></li>
<li><a href="database.php">Database</a></li>
<li><a href="password.php">Change Password</a></li>
<li><a href='?logout=true'>Log Out</a></li>
</ul>
现在您可以在任何页面上包含您的退出代码。
答案 2 :(得分:0)
是的,您需要手动提交表单,这是一个纯粹的JS方式来执行此操作:
<li>
<a href="" onclick="javascript: findForm('logout').submit()">
<form id="logout" action="logout.php" method="post">
<input type='submit' value='Log Out' name='logout' style="border:0px;" />
</form>
</a>
</li>
function findForm(id) {
for (var i = document.forms.length-1; i >= 0; i--) {
if (document.forms[i].id == id) return document.forms[i];
}
return null;
}