Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: input type=radio, alert (на JS) и submit
Форумы портала PHP.SU » PHP » Программирование на PHP » input type=radio, alert (на JS) и submit

Страниц (1): [1]
 

1. dus2003 - 09 Февраля, 2021 - 21:09:40 - перейти к сообщению
Добрый вечер.
Вопрос следующий.
Имеется форма обработки записей базы данных
<form>
...
<input type='radio' name='selrecord[]' value='" . $row['ID_DD'] . "'>
...
<input type='submit' value='Редактировать' formaction='update.php' formmethod='POST'>
<input type='submit' value='Удалить' formaction='delrec.php' formmethod='POST' >
</form>
Суть такая имеется таблица записей БД. В первом столбце input type=raidio. Выбираю запись и нажимаю например submit value='Удалить' и все вроде - перекидывает на новую страницу delrec.php и обробатывает запрос.
НО, я хочу сделать так чтобы если нажал на submit value='Удалить', а при этом input type=raidio не выбран то выводилось сообщение для пользователя что-то вроде "Не выбрана ни одна запись для удаления", выводиться должно на этой же странице где и сама <form> находится - Я ТАК ПОНИМАЮ это функция ALERT на JS.
ВОТ КАК ЭТО СДЕЛАТЬ Я НЕ ЗНАЮ.
ПОМОГИТЕ ПОЖАЛУЙСТА.
Как сделать подобное уведомление на странице где обрабатывается запрос переданный с помощью <form> я знаю (поэтому не пишите этого)
(Добавление)
Я так понимаю что должно быть что-то вроде такого:

<SCRIPT type="text/javascript">
function validate_form()
{
valid = true;
if ( document.ddoc_form.selrecord[].checked == false )
{
alert ( "Пожалуйста, выберите запись" );
valid = false;
}
return valid;
}
</SCRIPT>

<form name='ddoc_dorm'>
<input type='radio' name='selrecord[]' value='" . $row['ID_DD'] . "'>
...
<input type='submit' value='Удалить' formaction='delrec.php' formmethod='POST' onClick='return validate_form();>
</form>

Но radio у меня формируется как массив и количество записей зависит от наполнения БД, поэтому в скрипте в строке "document.ddoc_form.selrecord[].checked == false" в квадратных скобках не имеется возможности поставит конкретный номер записи

Подскажите как переделать скрипт.
Спасибо.
2. dus2003 - 10 Февраля, 2021 - 22:38:38 - перейти к сообщению
Все огромное "СПАСИБО" за помощь
Выкладываю ответ.

<script type="text/javascript">
function validateRadio (radios)
{
for (i = 0; i < radios.length; ++ i)
{
if (radios [i].checked) return true;
}
return false;
}

function validate_form()
{
if(validateRadio (document.forms["ddoc_form"]["selrecord"]))
{
//return true;
var agree=confirm('Вы действительно хотите удалить запись ?');
if (agree)
return true ;
else
return false ;
}
else
{
alert('Пожалуйста, выберите запись');
return false;
}
}
</script>

 

Powered by ExBB FM 1.0 RC1