Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 22.01.2016
Сообщений: 21
1

Выдает синтаксическую ошибку

22.01.2016, 18:14. Показов 831. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте. Только начал учить PHP. Смотрю видеоуроки. Дошел до 8 урока и при наборе кода выдало ошибку: Database query failedYou have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'limit 1' at line 1

Матюкается на следующее
PHP
1
$sql = "select content from pages where id = {$id} limit 1";
Причем если убрать {$id} и поставить в виде цифры, то будет нормально выдавать контент из БД.
В общем следующие файлы прилагаются:

models/mcontent.php
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
    require_once "../config/db.php";
    class Mcontent extends Db
    {
        function return_content($id)
        {
            //В данном случае limit 1 нужен для безопасности, так как контент может быть только 1
            $sql = "select content from pages where id = {$id} limit 1";
            $result = $this->sql($sql);
            return $result;
        }
    }  
?>
controllers/ccontent.php
PHP
1
2
3
4
5
6
7
8
9
10
11
12
<?php
  require_once "../models/mcontent.php";
  class Ccontent extends Mcontent
  {
      function print_content()
      {
        $res = $this->return_content($id);
        $row = mysql_fetch_assoc($res);
        $this->k_debug($row); 
      }
  }                                        
?>
views/vcontent.php
PHP
1
2
3
4
5
6
<?php
  require_once "../controllers/ccontent.php";
  $id = $_GET['id'];
  $vcontent = new Ccontent();
  $vcontent ->print_content($id);
?>
Ну и сам БД
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<?php
  require_once "config.php";
  class Db extends Config
  {
      private $connection;
      
      function __construct()
      {
        $this->open_connection();
        //echo "Connection is set";
      }
       
      
      private function open_connection()
      {
          //Записываем id нашего соединения
        $this->connection = mysql_connect($this->DB_HOST,$this->DB_USER,$this->DB_PASS);
        if(!$this->connection)
        {
            die("Database connection failed: ". mysql_error());
        }
        else
        {
            $db_select = mysql_select_db($this->DB_NAME);
            if(!$db_select)
            {
                die("Database selection failed: ".mysql_error());
            }
        }
        //Установка кодировки нашей БД, вне зависимости от настроек хостера , 
        //заявки которые мы будем посылать будут обрабатываться в ютф-8
        mysql_query("set names utf8") or die ("set names utf8 failed");    
      }
      
      public function sql($query)
      {
          //Результат вернулся в виде ссылки
          $result = mysql_query($query, $this->connection);
          if (!$result)
          {
              die ("Database query failed".mysql_error());;
          }
          return $result;
      }
  }
  $db = new db();
      
?>
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.01.2016, 18:14
Ответы с готовыми решениями:

Выдаёт синтаксическую ошибку
Всем привет, я только начинаю учить php. Решил написать небольшой скрипт. Вот мой код: При...

Траблы с разрывом строк в функции if, выдает синтаксическую ошибку
Приветствую! Есть код: &lt;meta charset=&quot;utf-8&quot; /&gt; &lt;?php $shop = &quot;open&quot;; if (&quot;open&quot; ==...

Помогите найти синтаксическую ошибку
Помогите найти ошибку: Parse error: syntax error, unexpected '{' on line 34 if...

Как исправить синтаксическую ошибку: unexpected '{'?
пишет Parse error: syntax error, unexpected '{' in...

4
Эксперт PHP
3851 / 3196 / 1343
Регистрация: 01.08.2012
Сообщений: 10,820
22.01.2016, 18:35 2
В $id ничего нет.
1
0 / 0 / 0
Регистрация: 22.01.2016
Сообщений: 21
22.01.2016, 18:54  [ТС] 3
Точно, в $id ничего нет и когда даешь значение, то срабатывает запрос, но я тогда не понимаю на счет видеоурока, где не прописывают $id, а запрос все равно срабатывает. Хм. В ступоре.
0
471 / 399 / 169
Регистрация: 04.01.2013
Сообщений: 1,675
22.01.2016, 19:05 4
Цитата Сообщение от Exline Посмотреть сообщение
$vcontent ->print_content($id);
Может потому, что даже во вьюшке вы метод вызываете с атрибутом, а в объявлении метода почему то без параметра?
0
Эксперт PHP
3851 / 3196 / 1343
Регистрация: 01.08.2012
Сообщений: 10,820
22.01.2016, 19:20 5
Exline, в запросе не может быть пустота. Должно быть хотя бы '' (пустая строка).
0
22.01.2016, 19:20
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.01.2016, 19:20
Помогаю со студенческими работами здесь

Прошу найти синтаксическую ошибку в PHP DevelStudio 2012
Говорит, ошибка на 3 и 5 строке, что не так не пойму, пересмотрел много статей на эту тему, но...

Почему выдает синтаксическую ошибку?
Здравствуйте! Подскажите почему выпадает синтаксическая ошибка с строке где находим q def ex96...

Анализатор SQL выдает синтаксическую ошибку
UPDATE Projects SET projName = проба, customer = я, executer = я, manager = 1, start = 01.06.2012,...

При выполнении запроса выдает синтаксическую ошибку
при выполнении запроса выдает синтакстическая ошибка посмотрите пожалуйста где ошибка SELECT ...

cn.Execute('INSERT INTO Kassets (N_kassete) VALUES(T1.Value)') Выдает синтаксическую ошибку
Есть поле ввода input type='text' name='T1' Пытаюсь передать значение, введенное в T1 в БД ...

При запуске ASP приложений на локальной машине ИЕ выдает синтаксическую ошибку
При запуске ASP приложений на локальной машине ИЕ выдает синтаксическую ошибку... не могу поеять в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru