[英]super stumped on simple session variables
我有以下兩個代碼片段可以正常工作..
<?php session_start();
$query = '23';
$_SESSION['testing'] = $query;
echo $_SESSION['testing'] . "<html><br></html>";
echo "<html><a href='http://www.nhl-statistics.com/scripts/test2.php'>click</a></html>"
?>
而且這個鏈接也是..
<?php session_start();
echo $_SESSION['testing'] . "<html><br></html>";
echo "<html><a href='http://www.nhl-statistics.com/scripts/test2.php'>click</a></html>"
session_destroy();
?>
但是..我會在兩頁上張貼相同的方法無法使用的頁面,希望你們能告訴我為什么
<?php session_start();
?>
<script type="text/javascript">
function destroyit()
{
<?php session_destroy(); ?>
}
</script>
</head>
<body>
<div id="page" align="center">
<div id="header">
<div id="companyname" align="left"></div>
<div align="right" class="links_menu" id="menu"><a href="/index2.php">Home</a> | <a href="logged.php">Log In</a> | <a href="#">Products</a> | <a href="#">Our Services</a> | <a href="#">Contact Us</a> </div>
</div>
<br />
<div id="content">
<div id="leftpanel">
<div class="table_top">
<div align="center"><span class="title_panel">News</span> </div>
</div>
<div class="table_content">
<div class="table_text">
<p class="news_date">blah.com<br />
blah.<br />
</p>
</div>
</div>
<div class="table_bottom">
<img src="images/table_bottom.jpg" width="204" height="23" border="0" alt="" /><br />
</div>
<div class="table_top"></div>
<div class="table_content">
<div class="table_text">
<html><form action="?" method="post">
Username: <input type="text" name="uname" /><br />
Password: <input type="text" name="pword" /><br />
<input type="submit" />
</form> </html>
</div>
</div>
<div class="table_bottom">
<img src="images/table_bottom.jpg" width="204" height="23" border="0" alt="" />
</div>
<div class="footer">
<p><br />
<a href="#">Home</a> | <a href="#">About Us</a> | <a href="#">Products</a> | <a href="#">Our Services</a> | <a href="#">Contact Us</a> | blah.com</a>.
</p>
</div>
</div>
<div id='contenttext' class='contenttext'>
<?php $username="a75sdadmin";
$password="1dBasdns2";
$database="a75asdesting";
$pword = $_REQUEST['pword'];
$uname = $_REQUEST['uname'];
mysql_connect('myssd.com',$username,$password);
@mysql_select_db($database) or die( "Unable to select database");
$query = mysql_query("SELECT * FROM `username` WHERE `password` = '$pword' AND `username` = '$uname'");
$exsists = 0;
WHILE($rows = mysql_fetch_array($query)){
$exsists = 1;
break;
}
if ($exsists){
$_SESSION['usern23']=$uname;
$_SESSION['logged']=1;
header('Location: logged2.php');
}
mysql_close();
?>
</div>
</body>
</html>
會話變量由於某種原因而不會發布到此頁面。.(logged2)
<?php session_start();
echo 'welcome, ' . $_SESSION['usern23'];
?>
<!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" xml:lang="en" lang="en">
<head>
<meta name="author" content="Wink Hosting (www.winkhosting.com)" />
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" href="style.css" type="text/css" />
<title>Aqua</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript" src="/classarray.js"></script>
<script type="text/javascript">
function doit()
{
var x=document.getElementById("multi2");
var xindex = x.selectedIndex;
var y=document.getElementById("multi3");
var yindex = y.selectedIndex;
var class4 = x.options[xindex].text;
var class5 = y.options[yindex].text;
var link = "index3.php?rav=" + class4 + "&pun=" + class5
window.open(link, '_self');
}
</script>
<script type="text/javascript">
function destroyit()
{
<?php session_destroy(); ?>
}
</script>
<script type="text/javascript">
$(document).ready(function(){
$("button.yo1").click(function rock(){
$("div.class1").html("<h1> </h1><h1><br /><select id='multi2' style='width:100px;'></select><br /></h1><button id='yo8' class='yo8'>Pick Class</button>")
childless();
$("button.yo8").click(function rock2(){
$("div.class3").html("<h1> </h1><h1><br /><select id='multi3'><option>random teacher</option></select><br /></h1><button id='yo9' class='yo9'>Pick Teacher</button>")
$("button.yo9").click(function rock3(){
$("div.golow").html("<button onClick='doit();'>click for notes</button>")
$("button.yo10").click(function rock3(){
$("div.contenttext").html("<div id='yi'></div>")
});
});
});
});
});
</script>
</head>
<body>
<div id="page" align="center">
<div id="header">
<div id="companyname" align="left"></div>
<div align="right" class="links_menu" id="menu"><a href="index2.php">Home</a> | <a href="/logged.php">Log In</a> | <a href="#">Products</a> | <a href="#">Our Services</a> | <a href="#">Contact Us</a> </div>
</div>
<br />
<div id="content">
<div id="leftpanel">
<div class="table_top">
<div align="center"><span class="title_panel">News</span> </div>
</div>
<div class="table_content">
<div class="table_text">
<p class="news_date">sdfgass.com<br />
dsf<br />
</p>
</div>
</div>
<div class="table_bottom">
<img src="images/table_bottom.jpg" width="204" height="23" border="0" alt="" /><br />
</div>
<div class="table_top"></div>
<div class="table_content">
<div class="table_text">
<?php
error_reporting(E_ALL);
echo $usern . '<html><br></html>';
echo '<html><a href="logged.php" onclick="destroyit();" >logout</a></html>';
?>
</div>
</div>
<div class="table_bottom">
<img src="images/table_bottom.jpg" width="204" height="23" border="0" alt="" />
</div>
<div class="footer">
<p><br />
<a href="#">Home</a> | <a href="#">About Us</a> | <a href="#">Products</a> | <a href="#">Our Services</a> | <a href="#">Contact Us</a> | Sasd.com</a>.
</p>
</div>
</div>
<div id='contenttext' class='contenttext'>
you are now logged in
</div>
</body>
</html>
<script type="text/javascript">
function destroyit()
{
<?php session_destroy(); ?>
}
</script>
這將永遠行不通。 PHP在服務器上立即執行,遠遠早於瀏覽器將其交給生成的頁面。 如果查看頁面的源代碼,您將看到上面的代碼已生成:
<script type="text/javascript">
function destroyit()
{
}
</script>
基本上,您是在開始一個會話,然后立即銷毀它。 如果要從客戶端JavaScript銷毀會話,則必須進行AJAX調用(或提交表單,單擊鏈接等),以調用進行銷毀的PHP腳本。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.