Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Работа с кнопками запуск функций


Автор: Veve 14.4.2007, 10:59
Поясните пожалуйста, а то я совсем запутолся....
Допустим у меня несколько кнопок на странице. При нажатие на первую, допустим, открывается страница один, а при нажатие на вторую страница 2. Как это реализовать, тоесть я не понимаю как в PHP работать с несколькими кнопками...
Если с одной то понятно, нажал на кнопку
Код

<form action="1.php">
<INPUT TYPE="submit" VALUE="yes" NAME="b1">
</> 

выполнился action. А если их несколько, то что нужно несколько form писать? Объясните плиз, лаймеру. 
И ещё, а можно ли сделать так чтобы при нажатие на кнопку выполнялось бы какая-то функция ну к примеру описаная в вайле func.php?

Извините, если задаю глупые вопросы, но хотелось бы понять... Спасибо, за помощь!

Автор: skyboy 14.4.2007, 13:51
Код

<form atcion="some.php" method="....">
<input type="submit" name="page" value="1" />
<input type="submit" name="page" value="2" />
<input type="submit" name="page" value="3" />
<input type="submit" name="page" value="4" />
<input type="submit" name="page" value="5" />
<input type="submit" name="page" value="6" />
</form>

Так, что ли? никогда не задавал name/value для input[submit] smile
А почему бы просто ссылками не сделать номера страниц?

Автор: Veve 14.4.2007, 14:09
Ок С кнопками понял! Спасибо! А как насчёт функций быть? 

Автор: SelenIT 14.4.2007, 14:34
Сделать ветвление по value нажатой кнопки?
Код

switch ($_GET['page']) { // или $_POST['page'] - смотря какой метод у формы
   case '1' :
      first_function();
      break;
   case '2' :
      second_function();
      break;
   case '3' :
      third_function();
      break;
   default:
      generate_error_message(); // никакая кнопка не нажата - нештатная ситуация
}

Автор: Veve 14.4.2007, 14:52
Не всмысле... допустим у меня одна кнопка... при назатия я хочу просто вызвать функцию описыную в где-то там
 Gde_to_tam.php

Автор: skyboy 14.4.2007, 15:12
тогда вот 
Код

<form action="gde_to_tam.php" method="GET">
<input type="submit" />
</form>

Gde_to_tam.php:
Код

<?php
function some_function()
{
....
}
some_function();
?>

Автор: Veve 14.4.2007, 15:29
Ну понятно вообщем..... просто думал, что можно как-то её сразу напрямую вызывать, чтобы она сразу при нажатие нажималась, а не из файла gde_to_tam.php.
Вообщем , спасибо за помощь! smile 

Автор: skyboy 14.4.2007, 16:12
Цитата(Veve @  14.4.2007,  14:29 Найти цитируемый пост)
чтобы она сразу при нажатие нажималась

а через формы - это не "сразу"? или тебе надо без перезагрузки страницы? тогда ищи инфо про AJAX. В ветке "JavaScript" информации - хоть ложкой ешь.
Цитата(Veve @  14.4.2007,  14:29 Найти цитируемый пост)
а не из файла gde_to_tam.php.

А вот этого уже не понял. "Чтоб вызывалась функция, описанная в файле gde_to_tam.php, но чтоб к самому файлу GDE_to_tam.php не обращаться". Телепатически догадаться, что за функция там описана без открытия файла?  smile 

Автор: Veve 14.4.2007, 16:20
Нет ну смотри у меня есть функция описаная в этом файле... и в твоём примере она и вызываеться с этго файла...  С помощью
Код

some_function();

А допустим у меня в этом файле выводиться какой то текст, что-то ещё делаеться. 
Тоесть при нажатие на кнопку это всё будет выполняться ну и потом вызавиться нужная мне функция... 
А мне нужно только эту функцию вызвать... 

Вообщем... забей... суть я понял. Извини если не правильно выразился..... Спасибо вообщем за помощь! 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)