Значение по умолчанию в текстовом поле, но только в первый раз - PullRequest
1 голос
/ 05 мая 2020

Я думал, что это должно быть довольно просто, но я просто не могу об этом подумать.

У меня есть текстовое поле, которое необходимо заполнить значением по умолчанию (числом). Так что, возможно, он должен сказать «1» при загрузке в первый раз. Но пользователь должен иметь возможность изменить его на любое число - положительный, отрицательный или 0, а затем сохранить его.

Значение по умолчанию в базе данных не является вариантом, потому что система устроена так, как это сделано, и может потребоваться изменить его в будущем, другими способами, кроме непосредственно в базе данных.

Как мне это сделать?

Требуется доработка ...: -)

Это для расписания, когда пользователь получает определенное время для выполнения фазы. На этот раз он состоит из двух полей «номер дня». Вторым может управлять пользователь, если знает, что это можно сделать быстрее или медленнее. Второй - также тот, который содержит значение по умолчанию. Так что, возможно, у них есть 10 дней, это может быть 6 + 4, а затем они могут изменить последнее на любое число отрицательное, положительное или нулевое. Таким образом, при первой загрузке страницы в поле должно отображаться значение по умолчанию (4), а после этого должно отображаться, что пользователь ввел. Сумма двух полей будет в конечном итоге рассчитана во временном расписании. Возможно, ноль - лучший способ. c поле.

Но мне интересно, можно ли это сделать только в коде, чтобы мне не нужно было использовать NULL в базе данных?

Ответы [ 3 ]

0 голосов
/ 05 мая 2020

Допустим, вы получили значение из базы данных в переменной $ value, тогда вы можете использовать тернарный оператор для отображения значения

<input type='text' value="<?php echo (!empty($value) || $value==0) ? $value : 1 ?>" />
//Put your Default value instead of 1.
0 голосов
/ 07 мая 2020
<input type='text' value="<?php echo isset($value) ? $value : 1; ?>" />

Вам необходимо иметь значение по умолчанию, если значение не установлено в базе данных. Если вы запросите значение и зададите его в переменной $ value, оно будет установлено только в том случае, если запись существует, поэтому тернар с функцией isset будет истинным, только если запись будет найдена. Таким образом, если нет записи, значение будет 1. После отправки формы значение будет установлено.

0 голосов
/ 05 мая 2020

Вы пробовали:

<input type='text' value='1' />

Он должен работать ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...