javascript - 将返回的 SQL 数组与随机结果选择器结合使用

标签 javascript php jquery

我正在为我开发的网站编写一个新功能插件,并且不知道如何实现此类功能。我试图将 SQL 查询返回到一个数组,然后将其传递给 PHP 或 JavaScript 中的函数,以执行随机选项选择器,并向用户显示结果。我正在尝试通过点击功能执行随机选择器。

到目前为止,我已经弄清楚如何成功选择 SQL 查询、返回语句,以及如何在 JavaScript 中使用随机选项选择器。然而,我一直没能找到一个好的方法来将所有这些东西结合在一起来产生我的结果。

我想知道是否有人知道如何做到这一点。在 PHP 中执行整个程序功能更好,还是将其传递给 JavaScript 函数并通过 JS 代码返回结果更好?

这是我的代码的一些示例。请假设我的查询有效。我的代码中不需要显示选项。它的实现是为了检查查询结果。我希望对用户隐藏真实插件中的数组,并将返回的结果用于附加到 HTML 元素的点击功能。

<?php
    function choices() {
        $config = parse_ini_file(*database file*);
        $con = mysqli_connect(*database information*);
        if(!$con){
            exit("Please try again later."); 
        }

        $query = "SELECT * FROM *query*";
        $result = @mysqli_query($con, $query);
        $num = mysqli_num_rows($result);
        if ($num > 0) {

            echo "<p>There are currently $num restaurants.</p>\n";

            echo '<table width="60%">
            <thead>
            <tr>
                <th align="left">Restaurant Title: </th>
                <th align="left">Link: </th>
            </tr>
            </thead>
            <tbody>
        ';

            while ($row = mysqli_fetch_array($result, MYSQLI_ASSOC)) {
                echo '<tr><td align="left">' . $row['post_title'] . '</td><td align="left">' . $row['guid'] . '</td></tr>
                ';
            }

            echo '</tbody></table>';

            mysqli_free_result($result);
        }

        else {
            echo '<p class="error">The results could not be retrieved.</p>';
        }

        mysqli_close($con);
    }

    $foo = choices();
?>

我的 JS 代码。

var favorites = ["choice #1, choice #2, choice #3, choice #4"];
var favorite = favorites[Math.floor(Math.random() * favorites.length)];

非常感谢您就这个问题提供的任何意见!我知道这是一个相当冗长的问题,我非常感谢花时间帮助我理解它。

最佳答案

为什么不让数据库返回一个随机结果,因为这就是您所需要的?

SELECT * FROM tbl ORDER BY RAND() LIMIT 1

看看this post about getting random rows

关于javascript - 将返回的 SQL 数组与随机结果选择器结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48290152/

相关文章:

javascript - 写入 "e && e.preventDefault()"以通过 JsLint 的最佳做法是什么?

javascript - 如何 Promisify 具有多个回调参数的函数?

php - 在验证某些 $_POST 变量是否正确后,我希望关闭窗口。我如何使用 JQuery 执行此操作?

javascript - 是否可以在 jQuery mmenu 中打开子菜单?

javascript - jquery - onclick 内容向下滑动

javascript - 粘性菜单 - 防止在页面刷新时加载

javascript - Node fs (文件流) 上传单个文件时创建 2 个文件

javascript - Either|Or 正则表达式的一部分,用于匹配两种可能性

php - 如何输出DOMDocuments?

php - PHP的随机播放功能有多随机?