使用 JavaScript 函数将 HTML 输入中的用户名保存到 XML 或 TXT 文件中的服务器


Save UserNames from HTML input, using JavaScript function to server in XML or TXT files

我花了很多时间在谷歌上搜索有关此的信息,但我所能找到的只是代码示例和解释的单独和平......我在编程方面的技术水平很低,所以我问,有人能不能像ABC一样一步一步地指导我,我到底必须做什么。所以这是我的情况:我正在使用JS和CSS在HTML中创建一个简单的游戏。您所要做的就是找到两个图像之间的 6 个差异。有索引.html(如父窗口)和JS函数更改该父窗口的div中的图像。有一些音频,一些带有画布元素的动画...一切都与火狐合作得很好。现在我想做的只是在 服务器上保存用户名及其查找所有差异所需的时间,然后在游戏结束时,在父窗口的div 中显示所有这些数据。用户名从HTML输入开始进入游戏,我在Main.js ParentObject.UserName中保存该数据。我有JS函数

 GameOver(ParentObject.UserName, ParentObject.StartTime)

我想在触发此功能时将数据保存在服务器上。我应该使用什么,如何做..保存的数据非常简单,但我被卡住了...我尝试了一些 php 代码,但我做错了......

function GameOver(UserName, StartTime){
    var FinishTime = new Date();
    var Time = (FinishTime - StartTime);
    if (UserName == "" || UserName == " "){
        UserName = "Player";
    }
    alert("Game over'n"+ UserName+", your time is: "+millisToMinutesAndSeconds(Time));
    document.getElementById("Container").scrolling= "yes";
    SaveUserName(UserName);
}
function SaveUserName(Name){
    try{    
        if (window.XMLHttpRequest) {
            // code for IE7+, Firefox, Chrome, Opera, Safari
            xmlhttp = new XMLHttpRequest();
        } else { // code for IE6, IE5
            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        }
        xmlhttp.onreadystatechange=function() {
            if (xmlhttp.readyState==4 && xmlhttp.status==200) {
                alert(xmlhttp.responseText);
            }
        }
        xmlhttp.open("POST","SaveData.php?q="+Name,true);
        xmlhttp.send();
        //xmlhttp.open("GET","newfile.txt",false);
        //xmlhttp.send();
        //document.getElementById("DivContainer").innerHTML=xmlhttp.responseText;
    }catch(e){
        alert(e);
    }
}

PHP 文件 SaveData.php 代码只是为了看看它是否有效(但事实并非如此):

<?php
header("Content-type: text/xml");
echo "<?xml version='1.0' encoding='UTF-8'?>";
echo "<note>";
echo "<from>Jani</from>";
echo "<to>Tove</to>";
echo "<message>Remember me this weekend</message>";
echo "</note>";
?> 

取消注释代码

xmlhttp.open("POST","SaveData.php?q="+Name,true);
xmlhttp.send();

保存数据.php(删除所有当前代码并使用以下代码)

<?php
if(isset($_POST['q']))
  echo $_POST['q'];
 else
  echo "Not posted";
?> 

然后检查输出