powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Помогите разобраться с формой. Запутался.
14 сообщений из 14, страница 1 из 1
Помогите разобраться с формой. Запутался.
    #38444123
phpuser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!

Гуглил и запутался окончательно.
Есть простая форма типа select option. В списке всего два значения.
И есть кнопка.
Нужно реализовать, что если выбрана позиция из списка выпадающего 1, то
делать то-то, а если 2, то что-то другое..
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
<html>
<?php
$v1="groups";
$v2="personal";
?>
<form action="" method="post">
    <select name ="status">
<------><option value=<?php echo "$v1"?>>Отчёты по группам</option>
<------><option value=<?php echo "$v2"?>>Персональный отчёт</option>
    </select>
    <input type="submit" name ="button" value="ok">.
</form>
</html>
...
Рейтинг: 0 / 0
Помогите разобраться с формой. Запутался.
    #38444145
Фотография DarkMaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
phpuser,

1) Пропиши action у формы
2) Твое "1 или 2" будет в $_POST['status'] в скрипте, к которому ты уйдешь по action
...
Рейтинг: 0 / 0
Помогите разобраться с формой. Запутался.
    #38444739
phpuser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
автор1) Пропиши action у формы
2) Твое "1 или 2" будет в $_POST['status'] в скрипте, к которому ты уйдешь по action
1. прописал.
2. не получается реализовать условие, если выбрано в select option то-то, то рисуем одну картинку,
иначе другое.
т.е. не работает:
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
if ($choice=$par['Groups'])
   {
    echo 'Вы ВЫБРАЛИ отчёт по ГРУППАМ:'.$choice;
   }
   else.
   {
   echo 'Вы выбрали что-то другое!';
   }


код полностью
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
<html>
<title>Отчёт по звонкам</title>
Отчёт по звонкам
<hr color="purple" size=1px width=1200px>
<?php
include 'design.php';
$par=array('Groups'=>"Отчёт по группам",'Personal'=>"Отчёт по операторам");
?>
<form action="callparser.php" method="post">
    <select name ="status">
<------><?php
<------>foreach($par as $key => $value):
<------>echo '<option value="'.$key.'">'.$value.'</option>'; //close your tags!!
<------>endforeach;
<------>?>
<------>
    </select>
<input type="submit" name ="button" value="ok">.
</form>

<?php
if(isset($_POST['button']))
    {
    $choice=$_POST['status'];
       if ($choice=$par['Groups'])
   {
    echo 'Вы ВЫБРАЛИ отчёт по ГРУППАМ:'.$choice;
   }
   else.
   {
   echo 'Вы выбрали что-то другое!';
   }
}
?>
</html>
...
Рейтинг: 0 / 0
Помогите разобраться с формой. Запутался.
    #38444767
Фотография DarkMaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
phpuser,

Второй скрипт это и есть callparser.php? Тогда отдай ему переменную $par[] через сессию к примеру. Он у тебя ее просто не видит.
И вообще - print_r() тебе в помощь, чтобы понял, что и куда у тебя попадает.
...
Рейтинг: 0 / 0
Помогите разобраться с формой. Запутался.
    #38444827
FatalPHPError
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: php
1.
if ($choice=$par['Groups'])


Классическая ошибка начинающего
...
Рейтинг: 0 / 0
Помогите разобраться с формой. Запутался.
    #38444832
Фотография DarkMaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FatalPHPError,

Кстати да. Хотя впрочем и профи этим грешат ;)
...
Рейтинг: 0 / 0
Помогите разобраться с формой. Запутался.
    #38444835
phpuser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DarkMasterphpuser,

Второй скрипт это и есть callparser.php? Тогда отдай ему переменную $par[] через сессию к примеру. Он у тебя ее просто не видит.
И вообще - print_r() тебе в помощь, чтобы понял, что и куда у тебя попадает.
нет, это всё один скрипт. в данном случае я не перемещаю никого на другую страницу.

проблема в том, что я не могу сделать сравнение.
в гугле нашёл, то что мне нужно, но не могу например для проверки вывести на экран.

мне нужно проверять, что если
Код: php
1.
if ($_POST['status'] = key($par))


то делать то-то
...
Рейтинг: 0 / 0
Помогите разобраться с формой. Запутался.
    #38444838
phpuser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
FatalPHPError
Код: php
1.
if ($choice=$par['Groups'])


Классическая ошибка начинающего
а как надо, можете показать?
...
Рейтинг: 0 / 0
Помогите разобраться с формой. Запутался.
    #38444871
Фотография Ренат
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
phpuser,

Код: php
1.
if ($choice==$par['Groups'])
...
Рейтинг: 0 / 0
Помогите разобраться с формой. Запутался.
    #38444880
phpuser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ренатphpuser,

Код: php
1.
if ($choice==$par['Groups'])



у меня даже такой вариант не отрабатывает.
мне нужно сравнивать то, что выбрал пользователь с ключом массива, а не его значением.
...
Рейтинг: 0 / 0
Помогите разобраться с формой. Запутался.
    #38444920
phpuser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
то, что я хочу сделать, работает вот так:
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
<?php
$groups='Groups';
$personal='Personal';

if(isset($_POST['button']))
    {
....
    $choice=$_POST['status'];
    if ($choice==$groups){
     echo 'Вы выбрали отчёт по ГРУППАМ! <br>';
    }
    else
    {
    echo 'Вы выбрали что-то другое';
    }
    }


но это как-то криво. мне пришлось для этого вводить две переменные $groups и $personal.

вместо этих переменных, я хочу использовать ключи ассоциативного массива и сравнивать
переменную $choice с ключами массива.
но я не знаю как, у меня не получается.
...
Рейтинг: 0 / 0
Помогите разобраться с формой. Запутался.
    #38445075
Фотография DarkMaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
phpuser,

Код: php
1.
2.
3.
   $choice=$_POST['status'];
   if  (array_key_exists($choice,$par)) echo "Вы выбрали $choice!";
   else echo "Неясно, чего хотите...";
...
Рейтинг: 0 / 0
Помогите разобраться с формой. Запутался.
    #38451647
deblogger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторно это как-то криво. мне пришлось для этого вводить две переменные $groups и $personal.

Потому что надо сделать две функции groups() и personal() которые вызывать в зависимости от того, что выбрал юзверь.

$func = $_POST['option'];
if (!is_callable($func)) {
} else {
$func($some_arg, $or_two, $or_more);
}

У меня так в гнездовой модели сделано. Потому что команд дофига и все их обработчики сугубые.
...
Рейтинг: 0 / 0
Помогите разобраться с формой. Запутался.
    #38451669
deblogger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: php
1.
2.
$choice=$_POST['status'];
    if ($choice==$groups){



Обычно делают так

Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
switch($_POST['status']){
  case 'group':
    echo 'you have selected "group"';
  break;
  case 'personal':
    echo 'you have selected "personal"';
  break;
  default:
    echo 'you have selected someting wrong';

} 




(необычно c variable variables, см. в мане),

переключатель содержит ваши "переменные".
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Помогите разобраться с формой. Запутался.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]