繁体   English   中英

如何使用PHP从mySQLi查询中回显每一行?

[英]How to echo each row from mySQLi query using PHP?

以下查询返回广告系列表中所有user_id为1的行:

SELECT * FROM campaign WHERE user_id=1

在测试的情况下,这是两个结果。 我将如何从每一行中回显设置的列。 例如,我想从每个结果中回显campaign_name。 我尝试了各种方法,但是没有成功。

我的最终目标将是这样的:

 <?php foreach($queryRow as $row) { ?>
                         <li>
                            <a>
                                <div>
                                    <p><?php echo($row['campaign_name']); ?></p>
                                    <p>
                                        Description Text
                                    </p>
                                </div>
                            </a>
                        </li>
 <?php } ?>

我对此一无所知,因此,如果我的预期结果完全不正确,我深表歉意。

尝试这个:

$qry = "SELECT * FROM campaign WHERE user_id=1";
$res = mysqli_query($conn, $qry);

if(mysqli_num_rows($res) > 0)   // checking if there is any row in the resultset
{
    while($row = mysqli_fetch_assoc($res))  // Iterate for each rows
    {
    ?>
        <li>
            <a>
                <div>
                    <p><?php echo($row['campaign_name']); ?></p>
                    <p>
                        Description Text
                    </p>
                </div>
            </a>
        </li>
    <?php
    }
}

它将针对结果集中的每一行进行迭代。

我按照Oldskool的建议研究了文档,并意识到我使用了错误的方法来创建数组。 相反,我使用mysqli_results类的fetch_all功能来创建带有结果的多维数组。 然后,我可以使用以下代码来回显结果:

<!DOCTYPE html>
<html>
<body>
<?php
include('inc/database_initiation.php');

//print_r($userCampaigns);

foreach ($userCampaigns as $row) {
    //echo $row[2];
    //echo $row[4];
    echo $row['campaign_name'];
    echo '<br>';
    echo $row['promotion_coins'];
    echo '<br>';
}

?>
</body>
</html>

包含“ inc / database_initiation如下”

  <?php
  session_start();
  include_once 'userManagement/dbconnect.php';

  if(!isset($_SESSION['userSession']))
  {
   header("Location: login.php");
  }

  $query = $MySQLi_CON->query("SELECT * FROM users WHERE user_id=".$_SESSION['userSession']);
  $userRow=$query->fetch_array();

  $campaignQuery = $MySQLi_CON->query("SELECT * FROM campaign WHERE user_id=1");
  $userCampaigns = $campaignQuery->fetch_all(MYSQLI_ASSOC);
  //$MySQLi_CON->close();
  ?>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM