Перейти к содержимому

Реферальная программа Мегаплана


Помогите с обработкой выбора в форме

#1 basilio

basilio
  • Пользователь
  • 79 сообщений
  • Репутация: 0
0

Отправлено 28 Март 2013 - 18:10

Добрый день! Я в PHP не силен, поэтому прошу помощи у вас. Есть вот такой код:
<li id="li_98" >
  <label class="description" for="element_98">Каким образом Вы хотите оплатить?* </label>
  <div>
  <select name="element_98" class="element select large" id="element_98">
<option value="1" selected="selected" >Официально через банк</option>
<option value="2" >Купить купон у нашей команды</option>
  </select>
  </div>
  </li>
Что нужно прописать в PHP, чтобы я смог получать данные выбора при отправке?
На сколько я помню, надо добавить эти строчки:
$oplata = $_POST['element_98'];
$message = 'ОПЛАТА:'.$oplata.'<br>';
Только вот как обработать сам выбор - не знаю.
Заранее большое спасибо!

 

 

  • 0

#2 fedornabilkin

fedornabilkin
  • Пользователь
  • 696 сообщений
  • Репутация: 91

Отправлено 04 Апрель 2013 - 08:59

Все правильно понимаешь. Только к твоему селекту надо добавить тег формы, если его нету на странице вообще (надеюсь есть).
А полученные данные обрабатывай сразу же:
$oplata = intval($_POST['element_98']);
if($oplata <= 0)
    exit("No type");
else
    $message = 'ОПЛАТА:'.$oplata.'<br>';
А дальше все зависит от того, что ты будешь делать с полученными данными.
  • 0
Как часто в горестной разлуке,В моей блуждающей судьбе, ФО, я думал о тебе.


#3 isvetlichniy

isvetlichniy
  • Пользователь
  • 619 сообщений
  • Репутация: 93

Отправлено 04 Апрель 2013 - 09:06

exit("No type");


думай, что пишешь
  • 0

#4 fedornabilkin

fedornabilkin
  • Пользователь
  • 696 сообщений
  • Репутация: 91

Отправлено 04 Апрель 2013 - 09:20

И что тут не так?
ТС подразумевает передачу типов оплаты, видимо ему проще эти типы пронумеровать.
Соответственно приводим к integer полученные данные и проверяем на ноль и отрицательное число.
Поэтому и завершаем работу скрипта, если число меньше или равно нулю
  • 0
Как часто в горестной разлуке,В моей блуждающей судьбе, ФО, я думал о тебе.


#5 isvetlichniy

isvetlichniy
  • Пользователь
  • 619 сообщений
  • Репутация: 93

Отправлено 04 Апрель 2013 - 09:37

Поэтому и завершаем работу скрипта


а как потом продолжить работу скрипта, например снова показать форму чтобы юзер ввел правильные данные?
Кароче , функция exit здесь неуместна. Ее целесообразно использовать, когда дальнейшая работа скрипта невозможна по каким либо причинам, например не удалось подключиться к базе данных или произошла попытка несанкционированного доступа

отрицательное число

тоже интересно, как можно получить отрицательное число при выборе из двух вариантов?

<option value="1" selected="selected" >Официально через банк</option>
<option value="2" >Купить купон у нашей команды</option>

  • 0

#6 fedornabilkin

fedornabilkin
  • Пользователь
  • 696 сообщений
  • Репутация: 91

Отправлено 04 Апрель 2013 - 09:44

isvetlichniy, я с тобой полностью согласен, но при разработке необходимо учитывать все возможные варианты, все невозможные и несколько невероятных.
Возможно с exit я переборщил, но ведь у ТС сейчас стадия тестирования, поэтому я так написал.
Как получить отрицательное число? Открываешь файрбагом страницу, меняешь положительное на отрицательное, отправляешь форму.
А вот тут как раз таки exit спасает. Логика проста: если приходит в форму что-то лишнее, то лучше остановить скрипт, потому что это делает не рядовой пользователь, а кто-то явно с нехорошими намерениями.
Возможно после этого подключаются еще файлы и выполняется какой-то другой код.

Всегда помним о том, что веб-формам мы не доверяем, а тут еще идет разговор о способах оплаты.
  • 1
Как часто в горестной разлуке,В моей блуждающей судьбе, ФО, я думал о тебе.


#7 isvetlichniy

isvetlichniy
  • Пользователь
  • 619 сообщений
  • Репутация: 93

Отправлено 04 Апрель 2013 - 09:57

Логика проста: если приходит в форму что-то лишнее, то лучше остановить скрипт, потому что это делает не рядовой пользователь, а кто-то явно с нехорошими намерениями.

ну ладно, это чисто теоретически, а так пишем валидатор адекватный если уж все по уму делать

а с учетом того, что данные отправляются на мыло (я это точно знаю, помогал автору), то бояться вообще не о чем

тему можно закрывать
  • 1


Оформление форума – IPBSkins.ru