Аватар для CyberPaladin
18 / 16 / 8
Регистрация: 27.05.2017
Сообщений: 118

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

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

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

Я тут анализирую исходный код одного сайта интернет-магазина, и наткнулся на такое непонятное, как для меня, решение.
А именно, вот, в следующем фрагменте кода(внутри 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
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
15.10.2019, 13:34
Ответы с готовыми решениями:

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

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

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

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

А то у меня вообще были подозрения, что таким образом сайт скрытно получает некие пользовательские данные, когда тот заходит на сайт
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
15.10.2019, 15:38
Помогаю со студенческими работами здесь

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

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

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

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

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


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

Новые блоги и статьи
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2. Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru