Вот что у меня есть. Этот код захватывает данные от всех пользователей и вычитает 1 из user_days, а затем обновляет строку user_days каждого пользователя.MYSQL нуждается в помощи потянув данные от каждого «пользователя», используя php
$result = mysqli_query($con,"SELECT * FROM users");
while($row = mysqli_fetch_array($result))
{
$minusone = $row['user_days']-1;
mysqli_query($con,"UPDATE users SET user_days=$minusone");
echo "<br />";
echo $row['user_days'];
}
Проблема у меня такая: Вместо вычитанием 1 из каждого пользователя и обновления каждого поля пользователей, это обновление поля для каждого пользователя со значением от первого пользователя.
пример: перед обновлением пользователя 1 имеет 30 дней пользователя 2 имеет 60 дней
после обновления пользователя 1 имеет 29 дней пользователя 2 имеет 29 дней (вместо 59 дней)
Есть помощь приветствуется, и я надеюсь, что этот вопрос легко понять.
Чтобы уточнить, я хочу обновить каждое поле. Я просто не хочу, чтобы обновления дублировались от первого результата.
Спасибо за все ответы, это оказало мне большую помощь.
Ваш SQL-запрос обновляет все записи. вы должны указать в нем какое-то условие, например: 'update users set user_days = $ minusone, где id ='. '$ row [id]' или что-то еще. Более того, вам не нужно делать это в цикле. Попробуйте что-то вроде 'update users set user_days = user_days-1;' standalone. – varnie
Спасибо, это сработало. –