javascript - 将 MySQL 与使用 Javascript 的 HTML 页面结合使用

标签 javascript html mysql

这可能是一个愚蠢的问题,但我正在寻找一种在 HTML 网页上使用 JavaScript 来发布和获取 MySQL 数据库的方法。因为我正在制作一个小游戏并希望实时保存信息。我可以使用 PHP 来做到这一点,但是当然这在页面加载上不会是实时的。

提前致谢。 蒂姆。

PHP 示例

<?
    if ($_SERVER['REQUEST_METHOD'] === 'POST') {
        if (isset($_POST['btnP1Login'])) {
            $myFile=fopen("P1Status.txt","w") or exit("Can’t open file!");
            fwrite($myFile, 'Online');
            fclose($myFile);
            header('Location: lobby.php');
        }
        if (isset($_POST['btnP2Login'])) {
            $myFile=fopen("P2Status.txt","w") or exit("Can’t open file!");
            fwrite($myFile, 'Online');
            fclose($myFile);
            header('Location: lobby.php');
        }
    }
?>

<html>
    <body>
        <div id="player1">
            <p>Player 1 - Offline</p>
            <form method="post" action="index.php">
                <input type="submit" name="btnP1Login">
            </form>
        </div>

        <div id="player2">
            <p>Player 2 - Offline</p>
            <form method="post" action="index.php">
                <input type="submit" name="btnP2Login">
            </form>
        </div>
    </body>
</html>

最佳答案

出于多种原因(不良做法、安全问题等),您不应该使用客户端 javascript 访问数据库,但如果您确实想这样做,这里有一个示例:

var connection = new ActiveXObject("ADODB.Connection") ;

var connectionstring="Data Source=<server>;Initial Catalog=<catalog>;User ID=<user>;Password=<password>;Provider=SQLOLEDB";

connection.Open(connectionstring);
var rs = new ActiveXObject("ADODB.Recordset");

rs.Open("SELECT * FROM table", connection);
rs.MoveFirst
while(!rs.eof)
{
   document.write(rs.fields(1));
   rs.movenext;
}

rs.close;
connection.close; 

连接到 SQL 服务器的更好方法是使用某种服务器端语言,例如 PHP、Java、.NET 等。客户端 JavaScript 只能用于接口(interface)。

有传言说有一个关于服务器 JavaScript 存在的古老传说,但这是另一个故事了。 ;)

关于javascript - 将 MySQL 与使用 Javascript 的 HTML 页面结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48611626/

相关文章:

MySQL 从同名的另一列更新列

javascript - 如何获得完整页面高度包括我可以使用滚动看到的内容?

javascript - 如何使用ajax一键点击动态显示多个表格

html - 如何在选择的下拉部分更改光标?

javascript - 我的 JavaScript 表单验证函数被调用两次

javascript - 如何使用 javascript 或 jquery 将焦点设置在第一个 LI 上?

javascript - 动态固定div时停止闪烁

javascript - 如何使用 react-google-maps 通过点击在 map 上添加标记?

mysql - 报告中的 Unicode 绑定(bind)特殊辅助字符输出错误

php - 将 mysql 转换为 mysqli