Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Не работает UPDATE (наверное синтаксис но где!!!)

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Dekker8
Отправлено: 23 Мая, 2009 - 16:13:06
Post Id



Частый гость


Покинул форум
Сообщений всего: 139
Дата рег-ции: Янв. 2009  


Помог: 0 раз(а)




Вот такой вот код: пошет что гдето ошибка синтаксиса а где не могу понять Недовольство, огорчение(


$num = $_POST['num'];
$fio_client = $_POST['fio_client'];
$phone_client_number = $_POST['phone_num'];
$adres_client = $_POST['adresse'];
$vremia_priema = $_POST['time'];
$data_priema = $_POST['date'];
$opisanie_nepol = $_POST['nepoladka_op'];
$opisanie_rem = $_POST['remont_op'];
$prinat_v_remont_sotr = $_POST['prinat_sotr'];
$status_rem = $_POST['status_rem'];


$update_values_query = "UPDATE 'comp_register'
SET 'NUMBER' = '$num',
SET 'FIO_CLIENT' = '$fio_client',
SET 'PHONE_CLIENT_NUMBER' = '$phone_client_number',
SET 'ADRES_CLIENT' = '$adres_client',
SET 'VREMIA_PRIEMA' = '$vremia_priema',
SET 'DATA_PRIEMA' = '$data_priema',
SET 'OPISANIE_NEPOLADKI' = '$opisanie_nepol',
SET 'OPISANIE_REMONTA' = '$opisanie_rem',
SET 'PRINAT_V_REMONT_SOTRUDNIKOM' = '$prinat_v_remont_sotr',
SET 'STATUS_REMONTA' = '$status_rem',
WHERE NUMBER = $num";

if(mysql_query($update_values_query)){echo "updated";} else {echo mysql_error();}
 
 Top
Champion Супермодератор
Отправлено: 23 Мая, 2009 - 16:35:42
Post Id



Активный участник


Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008  
Откуда: Москва


Помог: 57 раз(а)




запятая перед WHERE
(Добавление)
И я уверен, что в сообщении об ошибке написано об этом. Почему не читаешь?
(Добавление)
И название таблицы, если берешь в кавычки, то в обратные
(Добавление)
И названия полей
 
 Top
Dekker8
Отправлено: 23 Мая, 2009 - 18:00:09
Post Id



Частый гость


Покинул форум
Сообщений всего: 139
Дата рег-ции: Янв. 2009  


Помог: 0 раз(а)




Вот такое сообщение ошибки: 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 ''comp_register' SET 'NUMBER' = '12', SET 'FIO_CLIENT' = '12', SET 'PHONE_CLIE' at line 1

причем значения "12" переданы POST
 
 Top
EuGen Администратор
Отправлено: 23 Мая, 2009 - 18:19:28
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




Обратные кавычки:
PHP:
скопировать код в буфер обмена
  1.  
  2. $update_values_query = "UPDATE `comp_register`
  3. SET `NUMBER` = '$num',
  4. SET `FIO_CLIENT` = '$fio_client',
  5. SET `PHONE_CLIENT_NUMBER` = '$phone_client_number',
  6. SET `ADRES_CLIENT` = '$adres_client',
  7. SET `VREMIA_PRIEMA` = '$vremia_priema',
  8. SET `DATA_PRIEMA` = '$data_priema',
  9. SET `OPISANIE_NEPOLADKI` = '$opisanie_nepol',
  10. SET `OPISANIE_REMONTA` = '$opisanie_rem',
  11. SET `PRINAT_V_REMONT_SOTRUDNIKOM` = '$prinat_v_remont_sotr',
  12. SET `STATUS_REMONTA` = '$status_rem'
  13. WHERE `NUMBER` = $num";
  14.  

// без повторений SET (cм. ответ Roler) ))))


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Roler
Отправлено: 23 Мая, 2009 - 18:28:34
Post Id



Посетитель


Покинул форум
Сообщений всего: 458
Дата рег-ции: Авг. 2008  
Откуда: Россия


Помог: 1 раз(а)




А разве SET не нужно лишь один раз вставлять, перед первой записью? Не понял
 
 Top
Dekker8
Отправлено: 23 Мая, 2009 - 18:41:39
Post Id



Частый гость


Покинул форум
Сообщений всего: 139
Дата рег-ции: Янв. 2009  


Помог: 0 раз(а)




Всем спасибо за информацию вопрос решен.
"UPDATE comp_register SET STATUS_REMONTA = '$status_rem' WHERE NUMBER = '$num'" вот так вот работает Улыбка)
(Добавление)
ха !

$update_values_query = "UPDATE comp_register
SET NUMBER = '$num',
FIO_CLIENT = '$fio_client',
PHONE_CLIENT_NUMBER = '$phone_client_number',
ADRES_CLIENT = '$adres_client',
VREMIA_PRIEMA = '$vremia_priema',
DATA_PRIEMA = '$data_priema',
OPISANIE_NEPOLADKI = '$opisanie_nepol',
OPISANIE_REMONTA = '$opisanie_rem',
PRINAT_V_REMONT_SOTRUDNIKOM = '$prinat_v_remont_sotr',
STATUS_REMONTA = '$status_rem'
WHERE NUMBER = '$num'";

if(mysql_query($update_values_query)){echo "updated";} else {echo mysql_error();}

вот реально работающий код. БОЛЬШОЕ СПАСИБО Roler
 
 Top
EuGen Администратор
Отправлено: 23 Мая, 2009 - 21:34:14
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




Похоже, комбинация Ctrl+H не всегда дает нужный результат. Видимо, еще и внимательность нужна. По синтаксису повторение SET и правда ошибочно.


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« SQL и Архитектура БД »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB