Форум программистов, компьютерный форум, киберфорум
HTML, CSS
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
18 / 16 / 8
Регистрация: 27.05.2017
Сообщений: 118
1

Зачем скрывать все поля формы без кнопки отправки данных

15.10.2019, 13:34. Показов 897. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
День добрый, господа форумчане!
Прошу помощи объяснить странный код!

Я тут анализирую исходный код одного сайта интернет-магазина, и наткнулся на такое непонятное, как для меня, решение.
А именно, вот, в следующем фрагменте кода(внутри body в секции хедера), видим форму отправки данный(тег <form>) и внутри него все элементы с типом hidden, и нет кнопки отправки, да и еще все смещено за пределы страницы!

Вот фрагмент:
HTML5
1
<form action="/ru/cart/cart" target="cartframe" method="POST" name="cartform" style="width:1px;height:1px;border:none; position:absolute;left:-9999;" id="cartform"><input type="hidden" name="iframe" value="1"><input type="hidden" name="action" value="addItem"><input type="hidden" name="id" value=""><input type="hidden" name="pos" value=""><input type="hidden" name="color" value=""><input type="hidden" name="st_ot" value=""><input type="hidden" name="quantity" value="1"><input type="hidden" name="discount" value="0"></form>
И вопрос в том ЗАЧЕМ И ЧТО МОЖЕТ ДЕЛАТЬ ЭТОТ КОД?? Лично я понял что это некая служебная информация отправляется на сервер, но непонятно как она работает если нету кнопки отправки... автоматически? Но зачем так сделано, без понятия?
Объясните непонимающему!


Вот весь код шапки кому интересно:
HTML5
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
<body>
    <!-- Google Tag Manager (noscript) --><noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-MV889PP" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript><!-- End Google Tag Manager (noscript) --><iframe name="cartframe" class="hidden"></iframe>
    <form action="/ru/cart/cart" target="cartframe" method="POST" name="cartform" style="width:1px;height:1px;border:none; position:absolute;left:-9999;" id="cartform"><input type="hidden" name="iframe" value="1"><input type="hidden" name="action" value="addItem"><input type="hidden" name="id" value=""><input type="hidden" name="pos" value=""><input type="hidden" name="color" value=""><input type="hidden" name="st_ot" value=""><input type="hidden" name="quantity" value="1"><input type="hidden" name="discount" value="0"></form><!--    topline -->
    <div class="toplineBox">
        <div class="topline">
            <div class="row_menu center">
                <div class="top_menu"><a href="/ru/fotogalereya/" class="h-menu">Фотогалерея</a><a href="/ru/o_nas/">О нас</a><a href="/ru/ustanovka_dverey/">Установка дверей</a><a href="/ru/oplata_i_dostavka/">Оплата и доставка</a><a href="/ru/novosti/" class="h-menu">Новости</a><a href="/ru/statyi/" class="h-menu">Статьи</a><a href="/ru/contacts/">Контакты</a>
                    <form action="/ru/search/" method="GET" class="srch h-menu"><input type="text" id="searchq" name="q" value="Поиск" onFocus="this.value='';"><button type="submit"></button></form>
                </div>
            </div>
        </div>
    </div><!--  /topline    -->
    <div id="aligner">
        <!--    TOP  -->
        <div class="top_head">
            <div class="logo block"><a><img src="/i/logo.png" width="198" height="145" class="b0" alt="Дверной Дом"></a></div>
            <div class="toptels1 block"><img src="/i/phTels.png" width="234" height="24" class="b0" alt="Мы ждем Вашего звонка"><br>+380 44 227 54 74<br>+380 97 820 52 32<br><small>Пн - пт: 09:00 - 18:00<br>Сб: 10:00 - 15:00 </small></div>
            <div class="toptels2 block"><a href="javascript:void()" onClick="$('#callB').show('slow');" class="btnCallback"></a>
                <!--Form-->
                <div class="posrel">
                    <div id="callB" class="zPopUp" style="left:0px;">
                        <div id="form1" class="contForm">
                            <form id="callback_callback1">
                                <table class="cp5cs1">
                                    <tr>
                                        <td>Заказать обратный звонок <a href="#" onClick="$('#callB').hide('slow'); $('#callB2').hide('slow');" class="close"></a></td>
                                    </tr>
                                    <tr>
                                        <td><input type="hidden" value=" - Главная" name="part_name" id="part_name"></td>
                                    </tr>
                                    <tr>
                                        <td><input type="text" name="uname" id="name_callback1" value="Ваше имя" onFocus="if(this.value=='Ваше имя') this.value='';" onblur="if(this.value=='') this.value='Ваше имя'"></td>
                                    </tr>
                                    <tr>
                                        <td><input type="text" name="phone" id="phone_callback1" value="Ваш телефон" onFocus="this.value='';" onblur="if(this.value=='') this.value='Ваш телефон'"></td>
                                    </tr>
                                    <tr>
                                        <td><span class="">Антиспам: 3 + 1</span>&nbsp;&nbsp;&nbsp;<input type="text" name="fask" id="fask_callback1" value="" onFocus="this.value='';"></td>
                                    </tr>
                                    <tr>
                                        <td class="tac"><input type="submit" class="btnSendZ" value="Отправить заявку" onclick="if(!form_sbmt('callback1')) return false;" id="callbackBtn"></td>
                                    </tr>
                                </table>
                            </form>
                        </div>
                    </div>
                    <!--/Form-->
                </div>+380 93 475 64 25<br>+380 66 705 06 76<br>
            </div>
            <div class="cartPrev block" id="cartq"><img src="/i/phCart.png" width="157" height="23" class="b0" alt="Корзина товаров"><br class="dispnone"><span>товары не выбраны</span>
                <br class="clb">
                <span id="compq">
                    <a class="compareIcon">Товаров в сравнении: 0</a>
                </span>
                <br class="clb">
            </div><br class="clb">
        </div>
</body>
И что самое удивительное я очень часто вижу подобные вещи на страницах интернет-магазинов!

Вот так, обычно, выглядит этот код в браузере(со всеми стилями):
Миниатюры
Зачем скрывать все поля формы без кнопки отправки данных  
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.10.2019, 13:34
Ответы с готовыми решениями:

Значение текстового поля без отправки данных и js
Здравствуйте. У меня есть вот такой код: $count = 1; echo &quot; &lt;input type='text' name='count'...

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

сегодня наконец то понял что такое КЛАСС, и ОБЪЕКТ. понято всё, кроме одного - зачем всё это? в смысле, можно же без этого? так зачем жизнь усложнять?
сегодня наконец то понял что такое КЛАСС, и ОБЪЕКТ. понято всё, кроме одного - зачем всё это? в...

Отправка данных из Формы без нажатия кнопки
Как такое устроить ? Чтобы человек ввёл данные подождал две секунды и данные отправились...

2
462 / 265 / 55
Регистрация: 22.08.2010
Сообщений: 1,204
Записей в блоге: 4
15.10.2019, 15:28 2
Цитата Сообщение от CyberPaladin Посмотреть сообщение
Я тут анализирую исходный код одного сайта интернет-магазина, и наткнулся на такое непонятное, как для меня, решение.
А именно, вот, в следующем фрагменте кода(внутри body в секции хедера), видим форму отправки данный(тег <form>) и внутри него все элементы с типом hidden, и нет кнопки отправки, да и еще все смещено за пределы страницы!
Вариант 1 - сайт на этапе разработки
Вариант 2 - форма скрыта от незарегистрированного гостя
Вариант 3 - форма станет видимой при оформлении заказа (тупо, но и это не следует сбрасывать со счетов)
0
18 / 16 / 8
Регистрация: 27.05.2017
Сообщений: 118
15.10.2019, 15:38  [ТС] 3
esculap_ra, спасибо за варианты, первый вариант отпадает ибо сайт готовый. А вот на счет второго и третьего надо проверить!
То есть, я так понял исходя из ваших вариантов, элементы hidden динамически меняются на другие(типо input, buttton, text) где-то в скриптах, если выполняется условие авторизации на сайте или оформление заказа.

А то у меня вообще были подозрения, что таким образом сайт скрытно получает некие пользовательские данные, когда тот заходит на сайт
0
15.10.2019, 15:38
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.10.2019, 15:38
Помогаю со студенческими работами здесь

AJAX отправка данных из формы без нажатия кнопки submit
Здравствуйте, подскажите пожалуйста как отправить запрос AJAX без использования кнопки submit. То...

Стилизация кнопки отправки формы
Вот есть 2 кнопки, одна пересылает по ссылке и имеет класс CSS(вроде так оно называется), в общем...

Очистка поля формы, после отправки
Здравствуйте! Необходимо сделать очистку поля формы, после отправки... Знаю, что можно сделать...

Отправки формы с изображением вместо кнопки
Как сделать так чтоб отправить изображения как кнопку Submit? &lt;form action=&quot;index.php&quot;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru