2015-09-07 3 views
3

Здесь я пытаюсь обновить несколько значений столбцов в таблице mysql, используя php.Как обновить несколько столбцов в mysql, используя php

$product_id = mysqli_real_escape_string($link, $_POST['product_id']); 
$product_name = mysqli_real_escape_string($link, $_POST['product_name']); 
$product_category = mysqli_real_escape_string($link, $_POST['product_category']); 

$sql = "UPDATE product_list (product_name, product_category, product_price,product_description,product_size_category) VALUES ('$product_name', '$product_category', '$product_price', '$product_description', '$size_category')"; 
}" 

я 5 значений столбцов, которые будут обновлены в таблице, я использую переменную для сохранения данных и с помощью этой переменной необходимо обновить значения в таблице, как я могу это сделать?

+0

Так, что проблема у вас возникли? –

+0

Возможный дубликат [PHP: обновить несколько полей MySQL в одном запросе] (http://stackoverflow.com/questions/5254173/php-update-multiple-mysql-fields-in-single-query) –

+0

ваш запрос - запрос вставки , не обновлять запрос. Используйте 'update table_name' set' column_name' = 'значение' –

ответ

5
$sql = "UPDATE `product_list` SET 
     `product_name` = '$product_name', 
     `product_category` = '$product_category', 
     `product_price` = '$product_price', 
     `product_description` = '$product_description', 
     `product_size_category` = '$size_category' 
    where clause..... (if required) "; 
2

Try так:

$sql = "UPDATE product_list SET product_name='".$product_name."',product_category='".$product_category."',product_price='".$product_price."',product_description='".$product_description."',size_category='".$size_category."' WHERE product_id=".$product_id; 

Ссылка: https://dev.mysql.com/doc/refman/5.0/en/update.html

1

Вы путаете синтаксис запросов между INSERT и UPDATE запросов, синтаксис UPDATE является;

UPDATE TABLE SET col1 = val1, col2=val2... WHERE col1 = val 

Вы должны использовать UPDATE запрос следующим образом:

$sql = "UPDATE product_list SET product_name = '$product_name', 
product_category = '$product_category' WHERE product_id = $product_id"; 
1

Ваш запрос должен быть чем-то вроде этого:

"UPDATE product_list 
set 
product_name='$product_name', 
product_category ='$product_category', 
product_price='$product_price', 
product_description='$product_description', 
product_size_category='$size_category' 
where product_id='$product_id' 
" 
  1. убедитесь, что вы определите переменную, которую нужно как $ size_category и т. д., потому что я этого не видел.
  2. условия использования, как, где для обновления конкретной записи
1

Обновить запрос SQL, см протекающий путь.

Update database_tablename SET column_name1 = column_value1, column_name2 = column_value2

$sql = "UPDATE product_list SET product_name='".$product_name."',product_category='".$product_category."',product_price='".$product_price."',product_description='".$product_description."',size_category='".$size_category."'"; 
+1

. Пожалуйста, рассмотрите возможность редактирования сообщения, чтобы добавить больше объяснений о том, что делает ваш код и почему он будет решать проблему. Ответ, который в основном содержит только код (даже если он работает), обычно не поможет OP понять их проблему. – Reeno

Смежные вопросы