1

Тема: Проблема с MySql запросом

class Medit extends Db
{
    function update_comments($content, $name)
    {
        $sql = 'UPDATE main SET comments='.($content).' WHERE Name='.($name). ;
        $this->sql($sql);
    }
        function update_smth($content, $name)
    {
        $sql = 'UPDATE main SET smth='.($content).' WHERE Name='.($name).;
        $this->sql($sql);
    }
}
?>

Имеется вот такой вот код, при введении данных выдает ошибку:

Ваш запрос не прошёл - сбой: Unknown column 'Ломакин' in 'where clause'

Почему возникает такая ошибка, и почему он ищет фамилию Ломакин среди названий, а не значений поля?

2

Re: Проблема с MySql запросом

Надо перехватывать значение переменной $sql, чтобы посмотреть вид запроса. Делать это можно остановив выполнение кода строкой:

exit($sql);

3

Re: Проблема с MySql запросом

Hanut сказал:

Надо перехватывать значение переменной $sql, чтобы посмотреть вид запроса. Делать это можно остановив выполнение кода строкой:

exit($sql);

Гхм... Ну, как-то так...

UPDATE main SET comments=sfgdf WHERE Name=Ломакин

4

Re: Проблема с MySql запросом

Думаю не хватает кавычек для строк. Должно быть так:

UPDATE main SET comments="sfgdf" WHERE Name="Ломакин"

Соответственно запрос будет выглядеть так:

$sql = 'UPDATE main SET comments= "' . $content . '" WHERE Name= "'. $name . '"';

5

Re: Проблема с MySql запросом

Hanut сказал:

Думаю не хватает кавычек для строк. Должно быть так:

UPDATE main SET comments="sfgdf" WHERE Name="Ломакин"

Соответственно запрос будет выглядеть так:

$sql = 'UPDATE main SET comments= "' . $content . '" WHERE Name= "'. $name . '"';

Премного благодарю, работает все) Долго очень не мог справится с сией проблемой