如何从数据库中检索数据并将其传递给JavaScript中的变量?

时间:2017-09-12 20:54:06

标签: javascript php sql

我正在开发一个琐事游戏,需要更新JavaScript代码以从数据库中检索数据,并将数据传递给变量。但我不知道从哪里开始做出改变。我最好的猜测是实现php代码与数据库交互并检索数据。

我的代码的当前迭代使用内部数组来创建问题元素的变量和值

var questions = [{
                   question: "Which list contains words that are NOT names of shoe types?",
                   choices: [ "A. Oxford, jelly, boat, clogs, stiletto, mary jane",
                              "B. Loafer, gladiator, wedge, mule, platform",
                              "C. Pump, moccasin, wingtip, sneaker, derby, monk",
                              "D. Chalupa, dogler, hamster, croonley, frankfurt",
                            ],
                   correctAnswer: 3
                 } 
                //the array contains ten of these objects
                ];

JavaScript代码将从中检索的数据库编码如下:

Insert into  TriviaQuestions(id,questionNum,question,option1,option2,
                             option3,option4,option5,option6,questionAnswer)
Values('1','1','Which list contains words that are NOT names of shoe types:',
' A. Oxford, jelly, boat, clogs, stiletto, mary jane',
' B. Loafer, gladiator, wedge, mule, platform',
' C. Pump, moccasin, wingtip, sneaker, derby, monk',
' D. Chalupa, dogler, hamster, croonley, frankfurt',
'',
'',
'3')
;
  //there are ten questions like these

2 个答案:

答案 0 :(得分:0)

使用任何主要库(JQuery)向服务器端脚本发出ajax请求(用php,python等编写) 例如:

function send_request(question){
    $.post("ajax.php",{send_question: question},success:function(result){
    question = result.new_question;
 });
}

答案 1 :(得分:0)

您正在寻找的解决方案是AJAX。

JavaScript是一种客户端技术。这意味着无论它能做什么,您的客户也可以做到。如果您要直接访问数据库,访问者可以直接访问您的数据库,这不是您想要发生的事情。您可能还需要记住,您的访问者可以查看您在JavaScript中发送的所有代码,并且可以随意编辑它。

相反,您希望编写大部分代码,包括数据库连接,甚至是问题的答案,以便在服务器上处理,可能是在PHP中。

AJAX只是意味着让您的PHP向您的PHP发送POST请求以从中获取更新,以便您可以更新浏览器上的实时页面。

你应该有一个PHP脚本,它接收请求并提供一些数据来与你的JavaScript交谈。

如果您想更进一步,可以在PHP中设置一个会话变量,该变量可以保存会话的所有数据。 JavaScript可以要求PHP脚本获取一组新问题,然后可以让它检查答案等。

这篇文章可以帮助您入门:

https://www.w3schools.com/php/php_ajax_database.asp

这篇文章似乎是对PHP会话的一个很好的快速介绍:

https://www.tutorialrepublic.com/php-tutorial/php-sessions.php