让PHP会话正常工作
大家好首先我在整个周末都在论坛和其他页面做了大量的研究,最后我放弃并发布了它 代码如下:让PHP会话正常工作,php,html,Php,Html,大家好首先我在整个周末都在论坛和其他页面做了大量的研究,最后我放弃并发布了它 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <me
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>El primer script</title>
</head>
<body>
<div id="wrapper">
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
<p>numero: <input type="text" name="number" /></p>
<p><input type="submit" value="start" /></p>
</form>
</div>
<?php
if(!isset($_SESSION['CREATED'])) {
session_start();
$_SESSION['aux'] = 1;
} else {
$_SESSION['aux'] = 0;
}
if(isset($_SESSION['CREATED'])){
var_dump($_SESSION['aux']);
}
?>
</body>
</html>
El primer脚本
无论何时使用全局$\u会话
,都必须在页面顶部声明SESSION\u start()
尝试使用:
<?php session_start(); ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>El primer script</title>
</head>
<body>
<div id="wrapper">
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
<p>numero: <input type="text" name="number" /></p>
<p><input type="submit" value="start" /></p>
</form>
</div>
<?php
if(!isset($_SESSION['CREATED'])) {
$_SESSION['aux'] = 1;
} else {
$_SESSION['aux'] = 0;
}
if($_SESSION['CREATED'])){
var_dump($_SESSION['aux']);
}
?>
</body>
El primer脚本
如果定义了会话,则在测试条件后调用了session\u start(),在调用if语句之前放置,这不会显示任何内容,$\u session['CREATED']
永远不会被设置。Lawrence是对的,将session\u start()放在if条件之前,然后初始化$\u session['CREATED']在第一个if条件的第一个语句中使用布尔值true或任何您想要的值。我知道这没有定义,但是如果我在第一个if语句中初始化它,它不会有什么区别,对吗?它应该在if开始之前进行初始化,不是吗?如果您在开发时打开了错误显示,您可能会得到一个错误,这将有助于您在这几天前解决。您可能希望删除另一个会话\u start。您现在有两次会话\u start…非常感谢!,除了劳伦斯和DomainFlag指出的一些错误之外,他们也犯了这个错误。不必在页面的最顶端,就在任何输出之前。你所说的任何输出是什么意思?如果我把这个部分放在最上面,它就不起作用了,但是当我把它放在最上面的时候,就像他建议的那样,它终于起作用了,在这个例子中,在哪里可以放置session_start()?