我正在使用以下代码:
action.php的
<?php
$_SESSION['passtext'] = $_POST['passtext'];
?>
的index.php
<script type="text/javascript">
$(function(){
$("#clickable").click(function() {
$.post("action.php", { passtext: "Hello" } );
alert('refresh the page to see the session text');
});
});
</script>
<a href="javascript:void(0);" id="clickable">click me to set session text</a>
<?php if(isset($_SESSION['passtext'])) echo $_SESSION['passtext']; ?>
当我点击链接时,我收到警报,但似乎action.php根本没有运行 - 因为我将刷新页面,我看不到$ _SESSION ['passtext']的回声(它没有设定)
错误控制台中没有错误
我错过了什么?
答案 0 :(得分:2)
在处理会话之前,您需要在文件的开头添加此行:
session_start();
来自PHP文档:
session_start()创建会话或 基于a恢复当前的 通过GET或传递的会话标识符 POST请求,或通过cookie传递。
答案 1 :(得分:1)
尝试使用JQuery AJAX:
$.ajax({
type: "POST",
url: "action.php",
data: "passtext=Hello"
});