Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/264.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript PHP未使用XMLHttpRequest从HTML接收正确的数据_Javascript_Php_Xmlhttprequest - Fatal编程技术网

Javascript PHP未使用XMLHttpRequest从HTML接收正确的数据

Javascript PHP未使用XMLHttpRequest从HTML接收正确的数据,javascript,php,xmlhttprequest,Javascript,Php,Xmlhttprequest,下面的函数将发送数据到php脚本。运行php脚本时,找不到索引$POST[sessionID] function logout(){ var logoutRequest = new XMLHttpRequest(); logoutRequest.open("POST", "server/logout.php", false); logoutRequest.setRequestHeader('Conent-type', 'application/x-www-form-urlencode

下面的函数将发送数据到php脚本。运行php脚本时,找不到索引$POST[sessionID]

function logout(){
  var logoutRequest = new XMLHttpRequest();
  logoutRequest.open("POST", "server/logout.php", false);
  logoutRequest.setRequestHeader('Conent-type', 'application/x-www-form-urlencoded');
  logoutRequest.onreadystatechange = function () {
    if(logoutRequest.readyState == 4 && logoutRequest.status == 200) {
        sessionID = logoutRequest.responseText;
        console.log(sessionID);
    }
  }
  logoutRequest.send("sessionID=" + login_form.elements["sessionID"].value);
}


  <form name="login_form" method="post" id="login-form" onsubmit="submitForm(); return false;">
    <input type="text" name="username" id="username" placeholder="Username" required></input>
    <input type="password" name="password" id="password" placeholder="Password" required></input>
    <input type="submit" value="Log in" class="btn" id="submit-button"></input>
    <input id="sessionID" type="hidden" value="16"></input>
  </form>

是否正在发送post数据?您可以在开发者工具F12中看到post请求。这将向您显示请求、发布的数据、响应……等等。ya在请求数据下显示:sessionID=16您需要在加载HTML后调用logout,或者在HTML事件属性onclick中调用logout。submitForm也需要在其内部返回false。当它被创建时,它在表单的外部被调用:LogoutNo,如果您分配给HTML属性,则不会返回内容。只需将调用的函数放在那里:onclick='logout'。我甚至不会将JavaScript放入HTML,除非我无法避免它。单独的JavaScript类似于:document.getElementById'logout'.onclick=logout;或者var logout=document.getElementById'logout';logout.onclick=functioneventobjectisassedhere{funcWithArgseventObjectIsPassed Here/*如果需要*/,ar1,arg2;};