我正在从asp页面调用php脚本。问题在于以这种方式调用的php脚本无法设置cookie。这是两个脚本:
setcookie.asp
<%
Dim objXMLHTTP
Set objXMLHTTP = Server.CreateObject("Msxml2.ServerXMLHTTP.6.0")
objXMLHTTP.Open "POST", "http://127.0.0.1/setcookie.php", False
objXMLHTTP.Send
if len(objXMLHTTP.responseText)>0 then response.write "Result: "&objXMLHTTP.responseText
Set objXMLHTTP = Nothing
%>
setcookie.php
<?php
setcookie('mycookie', '12345', time() + (86400 * 30), "/");
echo 'ok';
?>
这两个页面在同一网站下的同一文件夹中运行。我尝试使用“ POST”和“ GET”都没有成功。如果我直接运行php,则会创建cookie。
有什么建议吗?谢谢
答案 0 :(得分:1)
您正在使用服务器端代码来调用您的php脚本。这意味着将在服务器上而不是在用户计算机上创建cookie。即使您在自己的计算机上使用开发服务器,如果未设置cookie,浏览器也可能不会知道在哪里寻找cookie。您需要使用客户端代码来调用php页面,您可以寻找Javascript / Ajax解决方案,也可以使用零尺寸的iframe。
或者,您可以学习如何使用Classic ASP设置Cookie。