如何解决'致命错误:调用未定义的方法mysqli_stmt :: fetchAll'?

时间:2017-02-20 15:11:48

标签: php

我遵循了关于让学生参加考试的教程。但是,它没有给出应该完成的结果。相反,它给了我这个: Fatal error: Call to undefined method mysqli_stmt::fetchAll() in C:\xampp\htdocs\ah\includes\functions.php on line 62

这是fetchAll所在的位置:

function get_all_std($conn,$table,$limit){

        try {
            $query = "SELECT * FROM {$table} ORDER BY  std_roll_no LIMIT {$limit}";
                $stmt = $conn->prepare( $query );
                $stmt->execute();
                return $stmt->fetchAll();

        } catch (Exception $e) {
            return "ERROR". $e->getMessage();
        }

      }

这就是function get_all_std

的位置
<?php        
        $view = $db->get_all_std($conn,'student_table',10);
        foreach ($view as $post) {
        $std_id = $post['std_roll_no'];

      echo '<tr>';

        // echo '<td>'. $post['student_id'] . '</td>';          
        echo '<td>'. $post['student_name'] . '</td>';
        echo '<td>'. $post['dob'] . '</td>';
        echo '<td>'. $post['gender'] . '</td>';
        echo '<td>'. $post['email'] . '</td>';
        echo '<td>'. $post['phone'] . '</td>';
        echo '<td>'. $post['address'] . '</td>';
        echo '<td>'. $post['Session'] . '</td>';
        echo '<td>'. $post['Program'] . '</td>';
        echo '<td>'. $post['Semester'] . '</td>';

        echo '<td width=250>';
        echo "<div class='ui mini buttons'>";
        echo '<a class="ui mini positive button" href="student_update.php?std_roll_no='.$post['std_roll_no'].'"> <i class="glyphicon glyphicon-pencil"></i>Update</a>';
        echo "<div class='or'></div>";    
        echo '<a class="ui mini red button" href="student.php?std_roll_no='.$post['std_roll_no'].'"><i class="glyphicon glyphicon-remove"> </i>Delete</a>';
        echo "</div>";
        echo '</td>';    
       echo '</tr>';  
        }
       ?>

所以我想知道如何解决这个问题,因为我已经在互联网上进行了研究,但没有一个能解决我的问题。

感谢。

1 个答案:

答案 0 :(得分:0)

没关系。我已经解决了这个问题。而不是使用我上面给出的code sample

我将代码结构更改为:

 <?php        
        $count=1;
        $sel_query="Select * from student_table ORDER BY student_id;";
        $result = mysqli_query($con,$sel_query);
        while($row = mysqli_fetch_assoc($result)) {

      echo '<tr>';

        echo '<td>'. $row['student_ID'] . '</td>';
        echo '<td>'. $row['school_ID'] . '</td>';
        echo '<td>'. $row['student_name'] . '</td>';
        echo '<td>'. $row['student_class'] . '</td>';

        echo '<td width=250>';
        echo "<div class='ui mini buttons'>";
        echo '<a class="ui mini positive button" href="student_update.php?student_ID='.$row['student_ID'].'"> <i class="glyphicon glyphicon-pencil"></i>Update</a>';
        echo "<div class='or'></div>";    
        echo '<a class="ui mini red button" href="student.php?student_ID='.$row['student_ID'].'"><i class="glyphicon glyphicon-remove"> </i>Delete</a>';
        echo "</div>";
        echo '</td>';    
       echo '</tr>';  
        }
       ?>

这意味着我没有使用fetch_all功能。我将$post更改为$row