0
  • Table: student
    enter image description here

  • student.php

    <?php
    function findStudentRecord()
    {
          //Db connection
    
          $q1 = "select * from student where gender = 'F'";
          $r1 = mysqli_query($dbc, $q1);
          $total_records = mysqli_num_rows($r1);
    
          $record = array();
          if($total_records > 0)
          {
              while($row1 = mysqli_fetch_array($r1, MYSQLI_ASSOC))
              {
                  $record[] = $row1;
              }
          }
          else
          {
              //[HERE]
          }
    
          return $record;
    }
    
    $record = findStudentRecord();
    //[HERE]
    ?>
    
  • I want to find female student record but there is no record from my database. How do I return 0 value from function and display "No record found" on my web page in [HERE] section?

KKL Michael
  • 795
  • 1
  • 13
  • 31

2 Answers2

2
if($total_records > 0)

add no else block so it will return an empty array now you can do something like this

$records = findStudentRecord();
if(count($records) === 0) {
    echo "No record found";
}
jmattheis
  • 10,494
  • 11
  • 46
  • 58
2

I would not change your function. It returns an array (may be empty) in any case wich is quite consistent.

Instead look at the number of array items returned:

$record = findStudentRecord();
//[HERE]
if(count($record) == 0) {
  echo "No record found";
} else {
  // what ever
}
maxhb
  • 8,554
  • 9
  • 29
  • 53