亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

迭代多行并在函數內輸出結果

迭代多行并在函數內輸出結果

慕姐8265434 2023-12-04 17:09:21
我的網站頁面之一有一個 PHP 文件,其中包含我的所有 HTML 和 PHP 代碼。我在網站上有一個表,我想用 SQL 表中的數據填充它。我目前將所有代碼(HTML、Javascript、SQL、PHP)放在一個名為“modules.php”的文件中。這是我必須填充表的代碼:<?php      // Shows all the modules in the table      $module_sql = "SELECT *, course.course_name FROM module INNER JOIN course on module.course = course.course_id";      $module_qry = mysqli_query($link, $module_sql);      while ($module = mysqli_fetch_array($module_qry)) { ?>        <tr>          <td><?php echo $module['module_name']; ?></td>          <td><?php echo $module['course_name']; ?></td>          <td><?php echo $module['perc_worth']; ?></td>          <td><?php echo $module['credit']; ?></td>          <td><?php echo $module['uni_year']; ?></td>        </tr>      <?php } ?>當所有內容都在一個文件中時,這一點非常有效。它獲取數據庫中的所有行,迭代它們并將結果打印在表中,直到沒有剩余。現在我正在創建一個類文件“queries.php”,它將在單獨的函數中包含我的所有 SQL 代碼。我將從“module.php”文件中調用每個函數。到目前為止,當我只需要執行查詢或從數據庫返回單行時,這非常有效,但是當我必須從數據庫返回多行時,我遇到了問題。這是到目前為止我已經實現的代碼:查詢.php    function executeGetQry($qry) {        $execute = mysqli_query($this->databaseConnect(), $qry) or die(mysqli_error(            $this->databaseConnect()));        if ($execute == null) {            return null;        } else {            return mysqli_fetch_array($execute);        }    }    function getAllModules() {        $module_sql = "SELECT *, course.course_name FROM module INNER JOIN course on module.course = course.course_id";        return $this->executeGetQry($module_sql);    }然而,這是行不通的,因為每次執行“while”循環時,它只是再次運行該函數并一遍又一遍地返回同一行,并且從不迭代并返回其他行。問題:如何修復我的函數,以便它能夠將所有行和return每行作為數組進行迭代,以便我可以成功地將所有 SQL 放入不同的文件中并獲得相同的結果?我有多個 SQL 查詢,需要迭代結果,所以我認為我需要修復我的executeGetQuery函數。
查看完整描述

1 回答

?
狐的傳說

TA貢獻1804條經驗 獲得超3個贊

由于mysqli_fetch_array()每次調用僅返回一行,因此它不能作為getAllModules().


你可以有getAllModules()return $execute,那么你的 PHP 代碼將是:


    <?php

        $execute = $query->getAllModules();

        while ($module = mysqli_fetch_array($execute)) { ?>

        <!-- your table row -->

    <?php } ?>


查看完整回答
反對 回復 2023-12-04
  • 1 回答
  • 0 關注
  • 146 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號