【问题标题】:Get data from database and append data to aframe从数据库中获取数据并将数据附加到框架
【发布时间】:2018-05-02 23:47:20
【问题描述】:

我想从数据库中获取数据并将该数据附加到框架中。我做到了,数据是从数据库中获取的,但没有附加到 aframe 场景中。这是我的工作流程。 该索引文件:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<script src="https://aframe.io/releases/0.8.0/aframe.min.js"></script>
<script 
src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"> 
</script>
</head>
<body>
<a-scene id="scene">
    <a-camera id="camera" position="0 0 2" >    
    </a-camera>
  <a-sky color="#000"></a-sky>
</a-scene>
<script>
    var ajax = new XMLHttpRequest();
    var method = "GET";
    var url = "data.php";
    var asychronous = true;

    ajax.open(method,url,asychronous);
    ajax.send();

    ajax.onreadystatechange = function(){
        if(this.readyState==4 && this.status==200){
            var data = JSON.parse(this.responseText);
            console.log(data);

            var html = "";
            var username = "";
            for(var i=0;i<data.length;i++){
                username = data[i].username;
                html += "<a-scene>";
                html += +username;
                html += "</a-scene>";
            }

            var totalText1 = document.createElement('a-text');
            totalText1.setAttribute('position',{x:0, y:0, z:0});
            totalText1.setAttribute('color',"#fff");
            totalText1.setAttribute('value',username);
            totalText1.setAttribute('scale',{x:1.6, y:1.6, z:1.6});
            document.getElementById("scene").appendChild(totalText1);
        }
    }
</script>
</body>

</html>

这是data.php文件

<?php 
$conn = mysqli_connect("localhost","root","","test");

$query = "SELECT * FROM usertest WHERE language='english'";
$result = mysqli_query($conn,$query);
$data = array();
while($row = mysqli_fetch_assoc($result)){
    $data = $row;
}

echo json_encode($data);
?>

数据检索没问题。但是有没有办法将这些数据附加到帧场景中?

【问题讨论】:

    标签: html aframe


    【解决方案1】:

    仔细检查实体实际上是附加到场景中的。看起来不错。从控制台检查检查器 (ctrl/alt/i) 或 DOM 检查器或查询选择器。 0/0/0 位置可能会让人很难看清。

    【讨论】:

    • 是的,我也检查过。但这不起作用。
    • 您能提供更多信息吗?您的 A-Frame 代码是否曾经运行过?它会向 DOM 附加任何内容吗?你在 Inspector 中看到什么了吗?记录内容时会看到什么?
    • 是的功能正在运行。 A-Frame 和 ajax 功能正在工作。我试图从数据库中获取值并将其附加到 aframe 场景中。 aframe 场景正在显示,我看到 DOM 来检查 ajax 函数是否正常工作,然后我看到它正在工作,但是我从数据库中获得的值没有附加到场景或没有显示。我想做过滤。但不起作用。
    • 抱歉,需要比“不起作用”或“不附加”更多的细节来提供帮助。我在上面问了几个与日志记录相关的问题。
    • 我正在回答您的问题。是的 A-Frame 代码运行。 aframe 场景显示。在 DOM Object language : "frence" username : "alex" __proto__ : Object 中显示了这个。在检查器中,它显示了相机、天空、实体和文本。这是屏幕截图:drive.google.com/file/d/1puPHy46eyGGllwsu1e2GtxXPSjCpzbOc/… 和日志人员是什么意思?
    猜你喜欢
    • 2020-03-08
    • 2020-07-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-24
    • 1970-01-01
    • 2018-10-13
    • 1970-01-01
    相关资源
    最近更新 更多