php - 遍历数据库查询

标签 php mysql for-loop

我正在创建一个非常简单的脚本。该脚本的目的是从数据库中提取问题并显示与该特定问题相关的所有答案。我们在这里处理两个表,并且有一个从问题数据库到答案数据库的外键,因此答案与问题相关联。

希望这是足够的解释。这是我的代码。我想知道这是完成此操作的最有效方法还是有更简单的方法?

<html>
<head>
<title>Advise Me</title>
<head>
    <body>

    <h1>Today's Question</h1>
    <?php 

    //Establish connection to database
    require_once('config.php');
    require_once('open_connection.php');

    //Pull the "active" question from the database
    $todays_question = mysql_query("SELECT name, question 
                                    FROM approvedQuestions
                                    WHERE status = active")
                                    or die(mysql_error());

    //Variable to hold $todays_question aQID
    $questionID = mysql_query("SELECT commentID FROM approvedQuestions
                                WHERE status = active")
                                or die(mysql_error());

    //Print today's question
    echo $todays_question;

    //Print comments associated with today's question
    $sql = "SELECT commentID FROM approvedQuestions WHERE status = active";
    $result_set = mysql_query($sql);
    $result_num = mysql_numrows($result_set);
    for ($a = 0; $a < $result_num; $a++)
        {
            echo $sql;
        }

    ?>


    </body>
</html>

最佳答案

我看起来您实际上并没有在问题或评论文本中喋喋不休……不知道这是否是个问题。因为只有一个问题(????)

$query = "SELECT q.*, c.* FROM approvedQuestions q LEFT JOIN comments c ON (q.id = c.questionID) WHERE q.status = 'active'";

$result = mysql_query($query);
if(mysql_num_rows()){
  while(false !== ($row = mysql_fetch_assoc($result)){
     // $row contains all columns for both question and record as array keys
     echo $row['commentID'];
     echo $row['id'];
     echo $row['name'];
  }
}

这不会在您每次打印答案信息时都显示问题信息,但这很容易解决,方法是在循环之前获取第一个 ro 并将问题数据拉入另一个数组,然后倒回结果集并调用循环。

关于php - 遍历数据库查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6489171/

相关文章:

php - 如何让按钮在 php 中启动数据库 (sql) 查询?

mysql - DROP 一个表的列,根据另一个表中的值

java - 如何让这个程序在之后终止

javascript - 基于for循环添加div类

batch-file - 如何获取分配给在循环内处理的环境变量的逗号分隔字符串的每个项目?

php - Facebook 点赞框 - 能够使用动态 URL 点赞当前页面

PHP - 用于路由的正则表达式

php - OOP - session 和 PHP

php - 如何更新php中最后一行的一个值

mysql - 在 mysql 中,如何根据一组给定的值为表中的每一行设置一列