Я не мог найти определенного ответа на эту конкретную проблему, в основном то, что я создал, представляет собой таблицу HTML, которая отображает содержимое базы данных в столбцы и строки. В настоящее время это очень просто, так как я понимаю, как это работает.Обновление нескольких столбцов в одной строке MySQL
ID | First_Name | Last_Name | Bio | Created
ID = первичный ключ для каждой строки базы данных.
Я хочу иметь возможность обновлять всю строку базы данных одной командой обновления, если это возможно. В настоящее время я использую:
$sql = "UPDATE databasetest.people SET First_Name = '".htmlspecialchars($_POST['FirstName'])."' WHERE people.ID = ".$_POST['edit'];
... где $_POST['FirstName']
является первым именем, как это определено в форме и $_POST['edit']
это идентификатор, определенный в первоначальном виде, в котором пользователь выбирает «Редактировать пользователя».
Возможно ли обновить несколько столбцов (имя, фамилия, биография и созданные сразу) таким образом?
EDIT: Очень быстрые ответы, спасибо вам большое! Я не уверен, почему я был замешан, возможно потому, что это было глупо? К сожалению, все еще учусь :)
Да, используйте ',' после каждого значения 'UPDATE databasetest.people SET First_Name = '" .htmlspecialchars ($ _ POST [' FirstName ']). "', Lastname = 'whatever' WHERE people.ID =". $ _POST ['edit']; 'https://dev.mysql.com/doc/refman/5.0/en/update.html – user3783243
@ user3783243 Лучше всего ответить на вопрос в ответе, а не на комментарии. Это SEO –
@ OllieJones не был уверен, что это проблема. Isrwluke вам следует отделить пользовательский ввод от ваших запросов. Именно так возникают SQL-инъекции. Вероятно, вы были заблокированы, потому что это одна из первых вещей на странице руководства. – user3783243