gpt4 book ai didi

javascript - 将 MySQL 的两行放入 PHP 数组中

转载 作者:行者123 更新时间:2023-11-29 16:45:07 25 4
gpt4 key购买 nike

我正在为我的学校开发一个窄播系统,目前我正在使用 JavaScript 在主显示页面上的 iFrame 的 URL 之间进行轮换。

我希望能够通过 PHP 后端更改这些值。但是我不知道如何将 2 行(module_url 和 module_time)放入数组中并将其回显给 JS。

浏览 stackoverflow 我尝试了各种代码,这个有点有效,除了它会抛出 URL,例如:“var arrayObjects = [”https:\/\/domain.eu\/dir\/page .php","https:\/\/domain.eu\/dir\/page.php"]"。

(我希望数组显示:“var arrayObjects = ["https:\/\/domain.eu\/dir\/page.php", 20]"。其中 URL代表新的 iFrame 源,20 代表页面显示的时间。)

所以我的主要问题是,如何使 2 行适合 1 个数组,以及如何确保数组显示正确的链接以及模块时间。

    <?php
$mysqli = new mysqli('localhost', 'user', 'pw', 'db');
if ($stmt = $mysqli->prepare("SELECT module_url FROM db")) {
$stmt->bind_result($name);
$OK = $stmt->execute();
}
//put all of the resulting names into a PHP array
$result_array = Array();
while($stmt->fetch()) {
$result_array[] = $name;
}
//convert the PHP array into JSON format, so it works with javascript
$json_array = json_encode($result_array);
?>

<script>
//now put it into the javascript
var arrayObjects = <?php echo $json_array; ?>
ALL OTHER JS CODE
</script>

编辑:目前 module_time 尚未添加到 MySQLi 查询中。

最佳答案

首先,您的 PHP 数组应该是多领域的,例如:

$result_array[] = array($name, <time here>);

既然你已经使用了 json_encode 并将其分配给 JS 数组,那么它确实已经是 Javascript 中的一个数组,也就是说你已经可以访问如下元素:

arrayObjects[0][0]; <---- first element URL
arrayObjects[0][1]; <---- first element time

将 JavaScript 数组打印到 HTML 会将其显示为文本,如下所示:

http://www.google.com,20,http://www.google.com,30

顺便说一句,您可以使用 JSON.stringify() 打印实际的 Javascript 数组而不是文本,示例:

var array = JSON.stringify(<?php echo $json_array; ?>);
document.write(array);

将输出:

[["http://www.google.com",20],["http://www.google.com",30]]

关于javascript - 将 MySQL 的两行放入 PHP 数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53140885/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com