简体   繁体   中英

PHP Fatal error: Call to undefined method

Here I import the files.class.php class which contains the getAllFiles() function:

include_once('lib/files.class.php');

Here I am calling the function :

<?php 
  $files = new Files($db);
  $jsonEncoding = json_encode($files->getAllFiles());
  $jsonFile = fopen("jsonEncoded.json", "w") or die ("Unable to open file!");
  fwrite($jsonFile, $jsonEncoding);
  $contentOfFile = file_get_contents('./jsonEncoded.json');
  echo $contentOfFile;
  fclose($jsonFile);
?>

This is the getAllFiles() function :

public function getAllFiles() {
        if (!($stmt = $this->connection->prepare("SELECT ID, Latitude, Longitude, Name, Radius FROM Files"))) {
            $this->lastError = 'Failed to prepare query: ('.$this->connection->errno.') '.$this->connection->error;
            return false;
        } else {
            // Execute the query and store the result set
            $stmt->execute();
            $stmt->store_result();

        // Bind the results to variables
        $stmt->bind_result($id, $latitude, $longitude, $name, $radius);
        $results = array();
        // Keep fetching rows
        while ($stmt->fetch()) {
          // Add to array
            $results[] = array(
                'ID' => $id,
                'Latitude' => $latitude,
                'Longitude' => $longitude,
                'Name' => $name,
                'Radius' => $radius,
            );
          }
          // Return the results array
          return $results;
        }
    }

I am getting the following error :

Fatal error: Call to undefined method Files::getAllFiles() in /var/www/localhost/htdocs/mbax4cl3/groupproject/map.php on line 83

Thank you !

Even if it doesn't make any sense , the problem seems to be with the code after this line : $jsonEncoding = json_encode($files->getAllFiles()); However, the error occurs on that line.

I changed the code to the following and it works fine :

    <?php 
  $files = new Files($db);
  $jsonEncoding = json_encode($files->getAllFiles());
  print_r($jsonEncoding);
?>

Thank you !

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

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