У меня в этом случае 4 переключателя в форме. На предыдущем этапе пользователь получает выбор между опциями (например, A, B, C, D), которые включают в себя различные радиостанции. Например: выберите «А» и «радио 1», и так далее. Этот выбор сохраняется в MySQL, какPhp/mysql: Обработка пустой sql-результата в php-массиве
// If B:
Customer Prod Group Chosen
12345 1 1 0
12345 2 1 1
12345 3 1 0
12345 4 1 0
Для дальнейшего использования в какой-либо другой странно ИТ-системе, мне нужно сохранить на выбранный в качестве 0
. Позже пользователь может снова посетить эту страницу. Затем я проверяю базу данных, чтобы отметить правильное радио как checked
.
Проблема
Пользователь не должен сделать первоначальный выбор.
Поскольку пользователь не должен сделать выбор (A, B ...) У меня возникли проблемы с SQL-запроса, когда он возвращался пустой результат (без выбора не найден). В этом случае я сохраняю результат sql до $p
, а затем проверьте, равно ли оно 1 или 0/пусто.
<input type="button" <?= empty($p[0])?'':'checked';?> />
<input type="button" <?= empty($p[1])?'':'checked';?> />
<input type="button" <?= empty($p[2])?'':'checked';?> />
<input type="button" <?= empty($p[3])?'':'checked';?> />
Это приводит к проверке первых 3 радиостанций.
Любая идея, как решить эту проблему? Мне как-то нужно проверить, является ли запись в sql 1
(выбрано), 0
(не выбрано) или вообще отсутствует.
SQL, это просто простой запрос:
$sql = "
SELECT chosen
FROM choices
WHERE group = 1
AND customer = 12345";
Edit:
var_dump($result)
говорит BOOL (ложь). Это нормально?
Опубликовать соответствующий sql –
@de_nuit Добавлено это и отредактировано немного. – Xavio
$ sql = "SELECT' selected' FROM 'choice' WHERE' group' = 1 AND 'customer' = 12345"; Являются ли групповые и клиентские INT-поля? –