Я работаю с запросами sql в php-файле, но у меня есть проблема. Моя работа работает:
if( isset($_POST['week']) && !empty($_POST['week']) && isset($_POST['location']) && !empty($_POST['location']))
{
$week = $_POST['week'];
$location = $_POST['location'];
$sql = 'SELECT *
FROM myDataBaseName
WHERE myDataBaseName_week='.$week.'
AND myDataBaseName_location="'.$location.'"';
}
Моя функция обновления не выглядит для работы:
if (isset($_POST['week']) && !empty($_POST['week']) && isset($_POST['location']) && !empty($_POST['location']) && isset($_POST['number']) && !empty($_POST['number']))
{
$week = $_POST['week'];
$location = $_POST['location'];
$numberForUpdate = $_POST['number'];
$sql = 'UPDATE *
FROM myDataBaseName
SET myDataBaseName_numbers ='.$numberForUpdate.'
WHERE myDataBaseName_week='.$week.'
AND myDataBaseName_location="'.$location.'"';
}
Может кто-нибудь помочь мне получить правильную функцию обновления, пожалуйста?
Спасибо !
Так должно быть:
$sql = 'UPDATE myDataBaseName
SET myDataBaseName_numbers ='.$numberForUpdate.'
WHERE myDataBaseName_week='.$week.'
AND myDataBaseName_location="'.$location.'"';
и не
$sql = 'UPDATE *
FROM myDataBaseName
SET myDataBaseName_numbers ='.$numberForUpdate.'
WHERE myDataBaseName_week='.$week.'
AND myDataBaseName_location="'.$location.'"';
Однако вы должны знать, что это небезопасный способ обновления данных. Вы должны использовать готовые заявления для предотвращения SQL-инъекций и здесь данные могут быть чем угодно, введенным пользователем в форму.
Других решений пока нет …