Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
 
Фильтр авторов:    показать 
  скрыть
  Ответ в темуСоздание новой темыСоздание опроса

> Как отправить данные с select на обратботчик формы, Как отправить данные с красивого select на обратботчик формы
Влад_83  
 ۩  [x] Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 4
Пользователь №: 42686
На форуме: 8 месяцев, 27 дней
Карма:




Всем привет! Создал форму обратной связи, где есть выпадающий список select. Но, я его сделал красивым и с помощью слоя div и списка ul li. Нашел на одном сайте http://www.howtomake.com.ua/front/stilizac...s-i-jquery.html. Изначально, думал, что будет просто выбранное значение отправить на обработчик почты, где есть проверка и отправка данных на почту. Я пытался привязать выбранные данные списка, но на почту в этом поле ничего не выводится. Помимо этого игнорируется проверка. Когда у меня был обычный select также игнорировалась проверка. Видно, в отличие от input, textarea, для select нужно иначе проверять. А проверка должна быть такая, что должно быть обязательно выбран какое-то значение из списка. При фразе "Выберите модель iPhone из списка" должно выводится "Вы не выбрали модель iPhone!...".

Код списка такой:

<div class="select">
<a
id="aselect" href="#" class="slct">Выберите модель iPhone из списка</a>
<ul
class="drop">
<li
id="iPhone 4">iPhone 4</li>
<li
id="iPhone 4S">iPhone 4S</li>
<li
id="iPhone 5">iPhone 5</li>
<li
id="iPhone 5c">iPhone 5c</o</li>
<li
id="iPhone 5s">iPhone 5s</li>
<li
id="iPhone 6">iPhone 6</li>
<li
id="iPhone 6S">iPhone 6S</li>
<li
id="iPhone 6 Plus">iPhone 6 Plus</o</li>
<li
id="iPhone 6S Plus">iPhone 6S Plus</o</li>
</ul>
<input
type="hidden" id="select" />
</div>



Все файлы для формы (форма, обработчик формы, стиль и скрипт) прикрепил в теме.

Это сообщение отредактировал Влад_83 - 14.03.2016 - 10:01

Присоединённый файл ( Кол-во скачиваний: 3 )
Присоединённый файл  Форма.zip
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Kusss  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 1358
Пользователь №: 28976
На форуме: 5 лет, 4 месяца, 12 дней
Карма: 77




делай проверку в яваскрипте. И при выборе добавляй в форму скрытое поле, с выбранной позицией.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
casper - gg  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Абориген
*****

Профиль
Группа: Пользователь
Сообщений: 216
Пользователь №: 42190
На форуме: 1 год, 6 дней
Карма: 10




Привет! Читай про формы внимательней:
Цитата (Влад_83 @ 14.03.2016 - 10:00)
<div class="select">
<a id="aselect" href="#" class="slct">Выберите модель iPhone из списка</a>

эти строки прямого отношения к полю формы select никакого отношения не имеют
вот так нужно:

<select>
<option>
Выберите из списка</option>
<option>
Option</option>
<option>
Textarea</option>
<option>
Label</option>
<option>
Fieldset</option><
<option>Legend</option>
</select>

PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Игорь_Vasinsky  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Лысый и злой
******

Профиль
Журнал
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 25994
Пользователь №: 21350
На форуме: 6 лет, 8 месяцев, 27 дней
Карма: 725

Не курю:
1 год, 2 месяца, 13 дней


1. при открытии формы сразу вываливается сообщение

user posted image

2. ereg уже давно не используется - примени preg_match()

3. На твоём месте я бы беспокоился за серверный код, который ужасен

по существу

твой выбранный элемент из списка будет с class = slct

var model = document.getElementsByClassName('slct')[0].innerHTML;



+ нужно скрытое поле - куда ты эти значения поставишь и отправишь в POST

т.е - добавить поле


<input type="hidden" name="model" id="model"/>


при клике по sumbit сделать

document.getElementById('model').value = document.getElementsByClassName('slct')[0].innerHTML;



в POST поймаешь $_POST['model'] - с твоей моделью блядофона


--------------------
Халявные ответы кончились.
Если нужен готовый код - готовьтесь заплатить.
Райкин тоже был артист

Возле дома был сарай
А когда всё хорошо
Можно просто покурить

user posted image
http://ufa102.xyz/
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Влад_83  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 4
Пользователь №: 42686
На форуме: 8 месяцев, 27 дней
Карма:




Цитата (casper - gg @ 14.03.2016 - 10:22)
Привет! Читай про формы внимательней:
Цитата (Влад_83 @ 14.03.2016 - 10:00)
<div class="select">
<a id="aselect" href="#" class="slct">Выберите модель iPhone из списка</a>

эти строки прямого отношения к полю формы select никакого отношения не имеют
вот так нужно:

<select>
<option>
Выберите из списка</option>
<option>
Option</option>
<option>
Textarea</option>
<option>
Label</option>
<option>
Fieldset</option><
<option>Legend</option>
</select>


Я понимаю, что это не select. В заголовке много слов не напишешь.
По сути это нестандартный выпадающий список, который сделан не на select, а с другими тегами. Я его нашел на одном сайте, ссылку которого приложил в первом письме темы. А также приложил файлы со своего сайта.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Влад_83  
 ۩  [x] Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 4
Пользователь №: 42686
На форуме: 8 месяцев, 27 дней
Карма:




Цитата (Игорь_Vasinsky @ 14.03.2016 - 10:29)
1. при открытии формы сразу вываливается сообщение

user posted image

2. ereg уже давно не используется - примени preg_match()

3. На твоём месте я бы беспокоился за серверный код, который ужасен

по существу

твой выбранный элемент из списка будет с class = slct

var model = document.getElementsByClassName('slct')[0].innerHTML;



+ нужно скрытое поле - куда ты эти значения поставишь и отправишь в POST

т.е - добавить поле


<input type="hidden" name="model" id="model"/>


при клике по sumbit сделать

document.getElementById('model').value = document.getElementsByClassName('slct')[0].innerHTML;



в POST  поймаешь $_POST['model'] - с твоей моделью блядофона

1. form.php - это уже файл обработчика формы, а html-форма находится в файле kontakty.php. И, вообще, по логике, должна быть ошибка ввода ФИО. Проверка e-mail - это 3 пункт.

2. А что сейчас используется для проверки e-mail. Обычно в интернете пишут на eregi. Вообще, я хотел найти проверку реально существующего e-mail, но так и не нашел.

3. Серверный код - это ты про что имеешь ввиду? Обработчик формы?

Фактически, скрытое поле в коде уже есть
<input type="hidden" id="select" />
. Я так понял, если его изменть на
<input type="hidden" name="model" id="model"/>
и добавить
document.getElementById('model').value = document.getElementsByClassName('slct')[0].innerHTML; в submit
, то выбранный элемент этого нестандартного списка на почту будет отправляться. А добавить
document.getElementById('model').value = document.getElementsByClassName('slct')[0].innerHTML; в submit
нужно через скрипт? И если я добавлю через скрипт, то все остальное будет отправляться на почту и выполняться проверка? А в обработчике чего-то не хватает для работы? В этом коде нужного нет:
if (isset($_POST['model'])) {
$model=trim($_POST["model"]);
$model=strip_tags($model);
$model=htmlspecialchars($model,ENT_QUOTES);
$model=stripslashes($model);

PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Влад_83  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 4
Пользователь №: 42686
На форуме: 8 месяцев, 27 дней
Карма:




Цитата (Kusss @ 14.03.2016 - 10:15)
делай проверку в яваскрипте. И при выборе добавляй в форму скрытое поле, с выбранной позицией.

Проверка в яваскрипт не подойдет. А оставить на php нельзя? Чтобы проверка была на php нужно, чтобы были стандартные поля формы, в том числе выпадающий список с помощью select?
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Игорь_Vasinsky  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Лысый и злой
******

Профиль
Журнал
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 25994
Пользователь №: 21350
На форуме: 6 лет, 8 месяцев, 27 дней
Карма: 725

Не курю:
1 год, 2 месяца, 13 дней


чёж так тяжело то вам... в submit на Onclick скрипт мой поставь


--------------------
Халявные ответы кончились.
Если нужен готовый код - готовьтесь заплатить.
Райкин тоже был артист

Возле дома был сарай
А когда всё хорошо
Можно просто покурить

user posted image
http://ufa102.xyz/
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
  Быстрый ответ
Информация о Госте
Введите Ваше имя
Кнопки кодов
Для вставки цитаты, выделите нужный текст и
НАЖМИТЕ СЮДА
Введите сообщение
Смайлики
:huh:  :o  ;) 
:P  :D  :lol: 
B)  :rolleyes:  <_< 
:)  :angry:  :( 
:unsure:  :blink:  :ph34r: 
     
Показать всё

Опции сообщения  Включить смайлики?
 Включить подпись?
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темы Ответ в темуСоздание новой темыСоздание опроса