使用PHP读取Javascript cookie
我有一些设置cookie的javascript代码,当我试图用php读取cookie时,它会说它是未定义的使用PHP读取Javascript cookie,javascript,php,cookies,Javascript,Php,Cookies,我有一些设置cookie的javascript代码,当我试图用php读取cookie时,它会说它是未定义的 Notice: Undefined index: scorecount in C:\xampp\htdocs\Contest\score.php on line 44 我正在使用xamp在我的计算机上运行和测试php,这可能是它不读取cookie的原因吗 这是我的密码 <!DOCTYPE html> <html> <head>
Notice: Undefined index: scorecount in C:\xampp\htdocs\Contest\score.php on line 44
我正在使用xamp在我的计算机上运行和测试php,这可能是它不读取cookie的原因吗
这是我的密码
<!DOCTYPE html>
<html>
<head>
<title>PHP Written Test</title>
</head>
<body style="background-color:#ADD8E6; margin-left:25%;">
<?php include 'variables.php';?>
<?php include 'functions.php';?>
<?php
session_start();
$x = 1;
$y = 0;
$score = 0;
while ($x <= 20) {
$a = $_POST["question" . $x];
$b = $_SESSION['correct'][$y];
$c = $_SESSION['question'][$y];
if (trim($a) == trim($b)){
$score++;
} else {
echo "$c<br>Your answer was: $a<br>The correct answer is: $b<br><br>";
}
$x++;
$y++;
}
echo "$score/20";
echo $_COOKIE["scorecount"];
?>
</body>
</html>
PHP笔试
我会发布一张图片来证明cookie设置正确,但我没有足够的重复。
当我在我的网络浏览器中查看所有cookie时,cookie“scorecount”就在那里并且设置正确,如果有人能告诉我我做错了什么,那将非常感谢
设置cookie的我的JS
function getCookie(c_name)
{
alert("Im in getCookie");
var i,x,y,ARRcookies=document.cookie.split(";");
for (i=0;i<ARRcookies.length;i++)
{
x=ARRcookies[i].substr(0,ARRcookies[i].indexOf("="));
y=ARRcookies[i].substr(ARRcookies[i].indexOf("=")+1);
x=x.replace(/^\s+|\s+$/g,"");
if (x==c_name)
{
return unescape(y);
}
}
}
function setCookie(c_name,value,exdays)
{
alert("Im in setCookie " );
var exdate=new Date();
exdate.setDate(exdate.getDate() + exdays);
var c_value=escape(value) + ((exdays==null) ? "" : ";
expires="+exdate.toUTCString());
document.cookie=c_name + "=" + c_value;
alert("Cookie Set");
}
function checkCookie(end)
{
alert("Im in checkCookie");
document.getElementById('full').ondragstart = function noDrag() { return false; };
var score=getCookie("scorecount");
if (score!=null && score!="")
{
if(end == 'yes')
{
score = score - 1;
return score;
alert("Your score is " + score);
}
else
{
score=1;
if (score!=null && score!="")
{
setCookie("scorecount",score);
//alert("Your score is " + score);
}
}
}
function correct(pgnmbr)
{
var val;
val = getCookie('scorecount');
val = parseInt(val)+ 1;
setCookie('scorecount',val);
location.href = loc();
alert(val);
}
function correct2(pgnmbr)
{
var val;
val = getCookie('scorecount');
val = parseInt(val)+ 1;
setCookie('scorecount',val);
location.href = loc2();
}
var clicks = 0;
function wrong(pgnmbr)
{
clicks++;
if(clicks < 3)
{
alert("wrong try again");
}
else
{
alert("you have exceeded your amount of trys");
location.href = loc();
}
}
document.getElementsByClassName('box1')[0].addEventListener('click', correct, false);
document.getElementsByClassName('bg')[0].addEventListener('click', wrong, false);
函数getCookie(c_名称)
{
警报(“我在getCookie中”);
变量i,x,y,ARRcookies=document.cookie.split(“;”);
对于(i=0;i尝试通过ajax调用将cookie内容发送到您想要用来读取cookie的php函数,祝您好运好的,我解决了我的问题,显然您只能读取设置在同一域上的cookie…#Duh#Noobie感谢大家的建议!!首先检查它是否通过了标题,您可以发布您的js co吗de this set the cookie?@DaveCribbs你发布的代码有很多不必要的空白,很难阅读。你应该在提问时发布格式良好的代码。OP就是这么做的。实际上我不知道ajax是什么……这是我第一次使用php,但从我的理解来看,我拥有的代码应该可以工作……甚至我的Professor被这件事难住了。