Фатальная ошибка: неперехваченное исключение ‘Exception’

#php

#php

Вопрос:

Итак, я обнаружил ошибку в своем prepared statement , это полная ошибка, которую я получаю:

 Fatal error: Uncaught exception 'Exception' with message 'You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '= ?' at line 1' in C:xampphtdocsw-classesclass.functions.php:82 Stack trace: #0 C:xampphtdocsindex.php(12): Functions->getSiteSetting('language') #1 {main} thrown in C:xampphtdocsw-classesclass.functions.php on line 82
  

Вот некоторый код, но я не вижу никаких ошибок. Также я специально проверил, что все строки и таблицы базы данных существуют.

class.functions.php (Строки с 79 по 94)

 public function getSiteSetting($setting) {
        $stmt = $this->mysqli->prepare('SELECT value FROM ' . $this->prefixed('settings') . 'WHERE name = ?');
        if(!$stmt) {
            throw new Exception($this->mysqli->error, 1);
        }
        $stmt->bind_param('s', $setting);
        $stmt->execute();
        $stmt->bind_result($result);
        $stmt->store_result();
        if($stmt->num_rows > 0) {
            while ($stmt->fetch()) {
                return $result;
            }
        }
        $stmt->close();
    }
  

index.php (Строки с 9 по 15)

 define('WCREATE_BASE', dirname(__FILE__));
include_once(WCREATE_BASE . '/w-core.php');

include_once(WCREATE_BASE . '/w-languages/lang.' . $functions->getSiteSetting('language') . '.php');
if(!existingTable($db->prefixed('settings'))) {
    displayErrors('no_table', array('table' =>  $db->prefixed('settings')));
}
  

Вы что-нибудь видите?

Ответ №1:

 $this->prefixed('settings') . ' WHERE name = ?');
                               ^ add space here