Интересная ошибка с UPDATE

OVenGo

Новичок
Интересная ошибка с UPDATE

Передаются скрипту поля. Скрипт выглядит таким образом:

PHP:
$query = "UPDATE $userstable2 SET (sist='$sist', kontinent=$kontinent, strana=$strana, region=$region, region2=$region2, city=$city, ist=$ist, title=$title, annot=$annot, maintext=$maintext, priori=$priori, datapub=$datapub, data=$data) WHERE zapaska=$zps";
В ответ получаю интересную ошибку: Ошибка - 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 '(sist='', kontinent=, strana=, region=, region2=, city=, ist=РИА , title=Япония ' at line 1

Это что может быть? Я маленько путаюсь :p
 

tf

крылья рулят
Profic
а я бы сказал лучше mysql.com как составлять запросы к базе
 

Profic

just Profic (PHP5 BetaTeam)
ми скромно предположил, что все эти переменные уже приведены к виду, в котором их можно пихать в базу. А синтаксис update запросов, чтобы он был прямым, как раз описывается по указанной ссылке :).
 

tf

крылья рулят
Profic
я понял. ты понял. а он не понял)
с синтаксисом у него все нормально пока оне echo $query не сделает или логи не посмотрит
 

_RVK_

Новичок
OVenGo
Я бы посоветовал ВСЕ значения полей заключать в кавычки.
 

tf

крылья рулят
_RVK_
а я бы хотем чтоб он сам этоп понял(
 

_RVK_

Новичок
tf
Я это понял через год после начала программирования. И был бы рад если бы кто дал мне этот совет раньше.
 

si

Administrator
OVenGo
топики называй в следующий раз нормально
 

tf

крылья рулят
_RVK_ жаль меня никто не учил(. дали работающий кусок кода - давай делай. я то и sql и не знал. при трудоустрйостве глухой был. подумал о чем-то другом)
 

_RVK_

Новичок
Дело не в учении а в программисткой хитрости, которая позволяет:
1. Не иметь гемороя с синтаксисом.
2. Не иметь проблем с приведением типов.

Просто заключай все в кавычки и думай о более насущных вещах.

А жизнь твоя тяжела была. Я сочувствую. Только к теме это не имеет отношения.
 

Valentin

Новичок
PHP:
$query = "UPDATE ".$userstable2." SET sist='".$sist."', kontinent='".$kontinent."', strana='".$strana."', region='".$region."', region2='".$region2."', city='".$city."', ist='".$ist."', title='".$title."', annot='".$annot."', maintext='".$maintext."', priori='".$priori."', datapub='".$datapub."', data='".$data."' WHERE zapaska=".$zps;
Но запрос действительно печальный :)
 

OVenGo

Новичок
Valentin
Однако предложенный вариант тоже отказался работать.
Для кого интересно, полностью рабочий вариант вот:

PHP:
$query = "UPDATE `$userstable2` SET `sist` = '$sist', `kontinent` = '$kontinent', `strana` = '$strana', `region` = '$region', `region2` = '$region2', `city` = '$city', `ist` = '$ist', `title` = '$title', `annot` = '$annot', `maintext` = '$maintext', `priori` = '$priori', `datapub` = '$datapub', `data` = '$data' WHERE `zapaska` = '$zps'
_RVK_
А Вы не ёрничайте.
 

tf

крылья рулят
OVenGo
может хватит издеватся покажеш нам echo $query
я кон мысли читаю. но основной тех кто рядом
да и телепатия нор работает - там либо кавычки разные глючат (что-то у меня было однажды) либо токо addslashes поможет поможет а можно и тут посикать http://phpclub.ru/talk/search.php?s=&action=showresults&searchid=837574&sortby=after&sortorder=descending
 

Фанат

oncle terrible
Команда форума
OVenGo
а ты считаешь, что застыв в позе роденовского мыслителя над элементарной ошибкой синтаксиса, не выглядишь комично?
Относись к себе чуть-чуть попроще.
 
Сверху