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
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: input type="radio" с одинаковым NAME
Покинул форум
Сообщений всего: 4254
Дата рег-ции: Февр. 2011 Откуда: .kh.ua
Помог: 242 раз(а)
DelphinPRO, подразумевалось, что мое предположение об использовании не тех элементов - неверно , и предложен вариант как сделать этот вариант более дружественным к пользователю(изначально текст и элемент связаны только визуально).
Для label есть два варианта:
В конкретном случае(когда текст идет прямо за элементом) не вижу смысла использовать for (+ меньше текста(всем элементам нужно присвоить id и продублировать его в атрибуте лэйбла) и видно как связаны элемент и текст), вот если элементы разнесены - естественно for
Покинул форум
Сообщений всего: 253
Дата рег-ции: Май 2012 Откуда: Херсон, Украина
Помог: 7 раз(а)
Вот я не пойму, зачем присваивать всем элементам одинаковое имя, которое ещё должен, обработать обработчик.
Вот код, готовый, который ты хотел, с небольшой проверкой.
(Добавление)
Это ограничение поля форума, всё моё форматирование с Dreamweaver - а "испоганило")
IllusionMH
Отправлено: 21 Мая, 2012 - 20:06:00
Активный участник
Покинул форум
Сообщений всего: 4254
Дата рег-ции: Февр. 2011 Откуда: .kh.ua
Помог: 242 раз(а)
Medallion, а теперь вдруг захотелось чтобы оценка была от 1 до 100...
Medallion
Отправлено: 21 Мая, 2012 - 20:07:40
Частый гость
Покинул форум
Сообщений всего: 253
Дата рег-ции: Май 2012 Откуда: Херсон, Украина
Помог: 7 раз(а)
На месте пользователя, я бы не хотел, чтобы оценка была от 1 до 100, и это "бред"; никому это не нужно, ни пользователю, ни разработчику. Хочешь всё-таки ему цикл впихнуть)
Extazy
Отправлено: 21 Мая, 2012 - 20:29:33
Посетитель
Покинул форум
Сообщений всего: 490
Дата рег-ции: Янв. 2010
Помог: 0 раз(а)
Medallion, а вот в Вашем варианте как в php коде вывести выбранную оценку?? print $_POST[???] - какое тут значение выбрать??
Medallion
Отправлено: 21 Мая, 2012 - 21:05:59
Частый гость
Покинул форум
Сообщений всего: 253
Дата рег-ции: Май 2012 Откуда: Херсон, Украина
Помог: 7 раз(а)
Тебе даже значение не нужно, знаешь что условие выполняется, например нажимаешь,
на оценку +1, выводиться переменная существует, это прописал, для наглядности. Сам какой хочешь текст и выводи. Напиши echo '1';
Выведет тебе цифру 1, и так для всех переменных.
echo'Условие выполняется при наличии цифры 1 в атрибуте value';
}
Если в атрибуте value стоит не цифра один, условие не выполнится. (Добавление)
Улови суть ещё раз.
Начнём с начала.
В теге <form> есть атрибут action, который указывает, какой файл будет обрабатывать, данные, которые пользователь ввёл в форме.
Если поставить action="#" то этот же файл и будет отрабатывать эти данные, а если
указать путь к файлу, например action="process.php" то в этом файле process.php и должен быть скрипт PHP.
Функция Javascript - name_form.submit() при одиночном клике onClick отправляет форму к файлу-обработчику, заметь name_form - это имя формы, которое задается между тегами
<form></form> в атрибуте name
Например, в атрибуте формы мы имеем имя, в твоём случае name="rating"
Вот теперь, готовая функция Javascript - rating.submit() которая срабатывает при событии щелчка левой кнопки мыши. А ты ранее это имя присвоил всем полям при том же) почему ничего и не видел.
Вернемся к форме:
Как видишь обработчиком формы есть символ хеш #
а значит этот же файл и есть обработчиком, в котором должен быть PHP-код.
При обработки формы PHP-интерпретатор создает глобальные переменные, с тем именем, которое указано в атрибуте name. Например, если мы нажали на цифру 2, то в POST глобальной переменной появиться переменная two со значением, которое указанно в value.
Если мы обратимся к переменной $_POST['two'], нам выведет цифру 2, так как в value стоит 2, если в value занесем строку "два", при обращении к $_POST['two'], нам выведет эту строку "два", я надеюсь смысл понятен.
Атрибут name создаёт переменную, атрибут value является значением этой переменной.
Написал жестоко) Но. я хотел расжевать суть.
Extazy
Отправлено: 21 Мая, 2012 - 21:42:42
Посетитель
Покинул форум
Сообщений всего: 490
Дата рег-ции: Янв. 2010
Помог: 0 раз(а)
Medallion пишет:
Тебе даже значение не нужно, знаешь что условие выполняется, например нажимаешь,
на оценку +1, выводиться переменная существует, это прописал, для наглядности. Сам какой хочешь текст и выводи. Напиши echo '1';
а мне как раз необходимо знать что за оценка была поставлена. При выборе любого пункта будет выдавать один и тот же текст типа "спасибо за голос", а в базу будет заноситься оценка.
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.