2018-09-27 11:04
浏览 165

无法从ASP Msxml2.ServerXMLHTTP.6.0对象调用的PHP中设置cookie

I'm calling a php script from an asp page. The problem is that the php script called in this way cannot set the cookie. Here are the 2 scripts:


    Dim objXMLHTTP
    Set objXMLHTTP = Server.CreateObject("Msxml2.ServerXMLHTTP.6.0")
    objXMLHTTP.Open "POST", "", False
    if len(objXMLHTTP.responseText)>0 then response.write "Result: "&objXMLHTTP.responseText
    Set objXMLHTTP = Nothing


setcookie('mycookie', '12345', time() + (86400 * 30), "/");
echo 'ok';

The two pages run under the same website, in the same folder. I tried with both "POST" and "GET" with no success. If I run the php directly, cookie is created.

Any advice? Thanks

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • duanshan3331 2018-09-27 16:31

    You're using server side code to call your php script. This means that the cookie will be created on the server, not on the user's machine. Even if you're using a development server on your own machine your browser probably won't know where to look for the cookie if it hasn't set it. You need to use client side code to to call your php page, you could look for a Javascript/Ajax solution or you could use a zero size iframe.

    Alternatively you could learn how to use Classic ASP to set cookies.

    Using Cookies in ASP

    解决 无用
    打赏 举报

相关推荐 更多相似问题