div中的jquery登录表单,无需刷新整页

我有一个php文件,我想在div中工作:

  
User:
Password:
Logout:
$v) { unset($_SESSION[$k]); } header('Refresh: 1; url='.$_SERVER['REQUEST_URI']); } } loginLogout(); ?>

而且我还有jquery和html中的代码

  $(document).ready(function(){ $('#logindiv').load('loginLogout.php'); $('#loginForm, #logoutForm').live('submit', function(e) { e.preventDefault(); $.post('loginLogout.php', $(this).serialize(), function ( data, textStatus) { $('#logindiv').html(data); }); return false; }); });  

和div

 

如何正确地输入代码,登录和注销也可以在jquery中工作而无需刷新整个页面? 什么是识别行标题的刷新事件(’Refresh:1; url =’。$ _ SERVER [‘REQUEST_URI’]); 在php文件中。 Widhout div和jquery它运作良好。

谢谢

这是一个使用2个文件的完整工作示例,它允许登录/注销表单在没有页面刷新的情况下动态更新。 代码与您的代码非常相似。

form.php的代码

  
User:
Password:
Logout:
Form

loginLogout.php的代码

  $v) { unset($_SESSION[$k]); } echo "false"; //successful log out } ?> 

更改代码以打印表单之前处理表单提交。 它可能看起来很直观,但除非您首先处理所有输入,否则当您准备好发送到浏览器时,您打印的HTML已经过时了。

如果使用ajax,也不需要刷新标头。

只需像这样更改您的代码:

 function loginLogout() { if(isset($_POST['login']) && isset($_POST['user']) && isset($_POST['passwd']) && $_POST['user'] == "admin" && $_POST['passwd'] == "admin") { $_SESSION['user'] = $_POST['user']; $_SESSION['passwd'] = $_POST['passwd']; } if(isset($_POST['logout']) && isset($_SESSION)) { foreach($_SESSION as $k => $v) { unset($_SESSION[$k]); } } $loggedUser = loggedUser(); if(!empty($loggedUser)) { logoutForm(); } else { loginForm(); } }