创建JavaScript函数来销毁php会话
Creating javascript function to destroy php session
我很难弄清楚如何创建一个会破坏 php 会话的 javascript 函数。 我有一个可点击的链接,它将调用一个名为destroyphpsess的函数。 我认为到目前为止这没问题。 现在我需要定义 javascript 函数。 这是我到目前为止的代码...
if ($_SESSION['color'] == "") {
$var = "<a href='JavaScript:newPopup('"http://www.yourfantasyfootballreality.com/register.php'");' class='two'>Register</a> | <a href='JavaScript:newPopup('"http://www.yourfantasyfootballreality.com/signin.php'");' class='two'>Sign In</a>";
} else {
$var = "Hello, ".$_SESSION['color'] ."! | " . "<a href='"http://www.yourfantasyfootballreality.com/index.php'" onclick='"destroyphpsess()'" class='two'>Log Out</a>";
}
echo $var;
现在我需要定义 javascript 函数。 这就是我遇到麻烦的地方。 这是我到目前为止的基本大纲...
function destroyphpsess()
{
<?php
session_destroy();
?>
}
如果有人能帮助我完成这个功能,我将不胜感激!谢谢。
你的JavaScript运行在客户端,你的PHP运行在服务器端。 你不能以这种方式从 JavaScript 调用 PHP 函数。 您有两种选择:
- 对清除会话数据的服务器端脚本执行 AJAX 调用(建议这样做是为了一致性和正确清除服务器端的内容)
- 使用 JavaScript 清除 PHPSESSID cookie(如果您重新配置处理会话的方式,或者会话由 URL 参数处理,则不起作用)
PHP 会话通常使用存储在客户端的 cookie。以下代码将清除该 cookie,从而取消会话的链接。
document.cookie = 'PHPSESSID=; expires=Thu, 01-Jan-70 00:00:01 GMT;';
每个人都在说 AJAX。如果您也想清理服务器端的 cookie,这将是一个好主意,但我认为如果您知道 AJAX 是什么,您可能已经使用它了......
当我第一次遇到 AJAX 时,我发现它非常令人困惑。所以我的建议是看看,也许使用jQuery的AJAX功能。只包含一个函数的 jQuery 可能有点矫枉过正,但它可能会更容易一些。
你的JavaScript运行在客户端,你的PHP运行在服务器端。你不能以这种方式从 JavaScript 调用 PHP 函数。您有两种选择:
对清除会话数据的服务器端脚本执行 AJAX 调用(建议这样做是为了一致性和正确清除服务器端的内容)使用 JavaScript 清除 PHPSESSID cookie(如果您重新配置处理会话的方式,或者会话由 URL 参数处理,则不起作用)
- PHP会话页面刷新不起作用
- 如何使用 php 会话变量作为 Angular Js 数据
- 通过Javascript更改PHP会话变量
- PHP会话ID变量与AJAX一起返回
- 从javascript变量获取php会话
- 无法获取php会话变量以在javascript中设置var
- 使用Jquery在页面加载上测试php会话变量
- 需要将一个值从javascript变量保存到php会话
- PHP会话在Aurelia中不起作用
- 更新图像切换上的php会话变量
- 如何设置从数据库到php会话的id点击链接
- php会话不会;单击“提交”按钮时无法处理表单
- 如何在Javascript中使用PHP会话变量
- 跨域php会话上传进度堆栈
- JQuery 变量到 PHP 会话
- 在 javascript 函数中添加 php 会话数据
- 将 JavaScript 变量传递给 PHP 会话
- 如何在javascript文件中访问php会话
- 从javascript中的不同形式获取值并存储在php会话中
- 有时会加载旧的 PHP 会话变量