У меня простая форма с кнопкой Submit. Мне нужно добавить еще одну кнопку, при нажатии на которую выполялася бы PHP-функция или PHP-файл. Помогите, пожалуйста!
HTML: <input type='submit' name='sbm' value='Кнопка 1'> <input type='submit' name='sbm' value='Кнопка 2'> В скрипте - из $_REQUEST['sbm']
Немного не допонял: 1. Почему name у кнопок одинаковый? 2. КАК мне определить, какая из кнопок нажата (по какому условию выполнять тот или иной кусок кода)?
Спасибо -- что-то проклюнолось! Чисто в позновательных целях: а если тип кнопки type='button', поле onClick может содержать только явовские скрипты? Никак нельзя "прицепить" на это событие PHP?
явовских onClick вообще содержать не может HTML: <form name="myform"> <input type="button" value="Кнопка" name="sbm" onClick="if(confirm('Вы уверены?')){myform.submit();}"> </form>
А это "if(confirm('Вы уверены?')){myform.submit();}" что за конструкция такая??? Я имею ввиду, это ж не PHP (ну или НЕ ТОЛЬКО)...
Ну, я это и имел ввиду -- это же JavaScript, так? Т.е. поле onClick (и иже с ним) работет только так, про PHP ничего "не знает"?
Теоретически верно, но на практике применять гемморно. А если понадобится поменять название кнопки или сайт многоязычный? Практичнее будет использовать такой вариант HTML: <form name="myform" id="myform"> <input type="hidden" name="action" id="action" value=""> <input type="button" value="Кнопка 1" onClick="document.getElementById('action').value='action1'; document.getElementById('myform').submit();"> <input type="button" value="Кнопка 2" onClick="document.getElementById('action').value='action2'; document.getElementById('myform').submit();"> </form>
Если не затруднит -- чуть-чуть хотя бы растолкуйте, пожалуйста! (Я понятливый, только тема для меня не родная! ) P.S. Чтобы было понятно, я не программер, а системный администратор. Захотелось сделать веб-интерфесик для часто используемых повседневных функций... Т.е. я общие понятия имею, но опыта маловато.
По onClick в скрытое поле "action" записывается действие (в данном случае action1 или action2) В PHP скрипте проверяем PHP: <? if ($_REQUEST['action'] == 'action1'){ // Нажали Кнопку 1 } if ($_REQUEST['action'] == 'action2'){ // Нажали Кнопку 2 } ?>
А чтобы понять все эти конструкции (типа, document.getElementById('action').value='action2' и document.getElementById('myform').submit(); ) нужно читать мануалы по JavaScript, я правильно понял?
Будьте так добры, обьясните для чего необходимо скрытое поле (строка 2)? Без него даннай код не работает, а кроме того, что это скрытое поле я не нашёл других пояснений в и-нете...
Во-первых, обычно я так и делаю. Во-вторых, с таким подходом, как у Вас, не стоит отвечать ни в какой пост. Если Вам лень ответить вразумительно, то и не стоит утруждаться: пользы может не больше, но уж вреда точно меньше! Превращаете тему в оффтоп. А форум -- это не только средство общения, а еще и поиска уже готового решения. А вот из-за таких "содержательных" ответов и гугл помогает не сильно...
Значит плохо делаете. По первой же ссылке: Код (Text): HIDDEN is a TYPE attribute value to the INPUT element for FORMs. It indicates a form field that does not appear visibly in the document and that the user does not interact with. It can be used to transmit state information about the client or server. Ок. Приму во внимание. Угу. Пошёл диссертацию писать. За поиском готовых решений в гугль. Не нашли? Велкам ту форум! PS к закрытию темы не имею никакого отношения.