проблема с update колонки в таблице БД

  • Автор темы dimnast
  • Дата начала

dimnast

Guest
проблема с update колонки в таблице БД

Суть вопроса.... Из формы получаем переменные
------
$id=$_POST['id'];
$name=$_POST['name'];
$auth=$_POST['auth'];
$text=$_POST['FCKeditor1'];
$short=$_POST['short'];
// далее обновляем таблицу
$sql1="update bank set name='$name' , $auth='$auth' ,long='$text' where id=$id";
$query = $db->query($sql1);
-----------
Однако обновления просто не происходит.
Проблема с обновлением колонки long... Если написать
$sql1="update bank set name='$name' , $auth='$auth' where id=$id";
$query = $db->query($sql1);
то все без проблем обновляет....
В таблице bank поле long - текстовое (text). Переменная $text=$_POST['FCKeditor1'] - это данные, получаемые с визуального редактора.
Не могу понять, почему возникает проблема с обновлением колонки...Данные из формы приходят - я проверял. Может что-то в свойствах таблицы неправильно для этого поля?
И какой функцией можно посмотреть ошибку, если не получаеться запись в БД?
$sql1="update bank set name='$name' , $auth='$auth' ,long='$text' where id=$id";
$query = $db->query($sql1);
if (!$query) необходимая ф-ция, которая показывает ошибку;

Люди, помогите - просто бред какой-то, поскольку с insert все работает без проблем ...
 

SelenIT

IT-лунатик :)
1) По идее, ф-ция вывода ошибки должна быть предусмтрена в классе работы с БД (что-нибудь типа $db->error()). Если нет - смотреть в мануале в разделе для данной БД (для MySQL - [m]mysql_error[/m]).

2) ..., $auth='$auth' , ... - тут точно все так и должно быть?
 

svetasmirnova

маленький монстрик
А почему [m]mysql_real_escape_string[/m] не используешь?
(для других баз соответствующий аналог тоже есть)
 

dimnast

Guest
Учел советы, подключил ф-цию ошибок и имею такую ситуацию:
--------
$id=$_POST['id'];
$long=$_POST['FCKeditor1'];
$sql="update bank set long='$long' where id=$id";
$query = $db->query($sql);
if (!$query) echo mysql_errno() . ": " . mysql_error() . "\n";
----------------
От ф-ции проверки ошибки получаю:
-------------------
1064: You have an error in your SQL syntax near 'long='ввввввввввввввввввввввввввввbb' where id=1' at line 1
---------------------
Бред какой-то... любое значение кроме $long без проблем передается. В чем ошибка?
 
Сверху