Как отключить флажок после вставки значения в базу данных
i'm trying this code, actually i'm trying to make bed booking. please help me how can i do
Что я уже пробовал:
охраняемых недействительными btnSave_Click(объект отправителя, EventArgs в электронной)
{
строка bednumber, Bedstatus;
пробовать
{
если (чккк.Проверено == верно)
{
bednumber = "первый этаж 201";
}
еще если (chk1.Проверено == верно)
{
bednumber = "первый этаж 202";
}
еще если (chk2.Проверено == верно)
{
bednumber = "первый этаж 203";
}
остальное, если (chk3.Проверено == верно)
{
bednumber = "первый этаж 204";
}
еще если (chk4.Проверено == верно)
{
bednumber = "первый этаж 205";
}
остальное, если (chk5.Проверено == верно)
{
bednumber = "первый этаж 206";
}
остальное, если (chk6.Проверено == верно)
{
bednumber = "первый этаж 207";
}
остальное, если (chk7.Проверено == верно)
{
bednumber = "первый этаж 208";
}
еще
bednumber = "не";
если (ChkActive.Проверен)
{
Bedstatus = "Забронировано";
}
еще
Bedstatus = "Забронировано";
Коннектикут.Открыть();
Команда sqlcommand cmd и = новая команда sqlcommand("если не существует(выберите * от BedBooking где BedNumber = '" + bednumber + "')вставить в BedBooking(PatientName, BedNumber) значения('" + txtName.Text + "','" + bednumber + "')", conn);
УМК.Метод executenonquery();
Sqlcommand, который cmd1 = новая команда sqlcommand("если не существует(выберите * от AddBedNumber где BedNumber = '" + bednumber + "') вставить в AddBedNumber(BedNumber, активный) значения('" + bednumber + "','" + Bedstatus + "')", соед);
cmd1.Метод executenonquery();
Коннектикут.Закрывать();
Ответ.Напишите("alert('спасибо !!! Ваше бронирование прошло успешно!!')");
}
поймать (исключение бывший)
{
}
}
F-ES Sitecore
Вам нужна команда SQL, которая возвращает все забронированные номера, чтобы вы могли отключить соответствующие флажки при загрузке страницы. Похоже, что вы жестко закодировали большую часть своих данных о номерах, что не очень хорошая идея, если бы вы получили эти данные из базы данных, вы, вероятно, могли бы вернуть все номера, а также то, что было забронировано в данный момент в одном запросе.
Richard Deeming
new SqlCommand("IF NOT EXISTS(SELECT * FROM BedBooking WHERE BedNumber = '" + bednumber + "')INSERT INTO BedBooking(PatientName, BedNumber) VALUES('" + txtName.Text + "','" + bednumber + "')", conn);
Не делай этого так!
В данный конкретный случай поскольку ваши значения параметров жестко закодированы, вы едва избежали уязвимости SQL-инъекции. Но если кто-то изменит этот код через шесть месяцев, чтобы заменить жестко закодированные значения значениями, которые могут контролироваться пользователем, у вас возникнут серьезные проблемы с безопасностью.
НИКОГДА используйте конкатенацию строк для построения SQL-запроса. ВСЕГДА используйте параметризованный запрос.
Все, что вы хотели знать о SQL-инъекции (но боялись спросить) | Трой Хант[^]
Как я могу объяснить SQL-инъекцию без технического жаргона? | Обмен Стеками Информационной Безопасности[^]
Шпаргалка по параметризации запросов | OWASP[^]