0 Пользователей и 1 Гость просматривают эту тему.
  • 14 Ответов
  • 1466 Просмотров
*

teoformartel

  • Новичок
  • 7
  • 0 / 0
Задание:
Пользователь переходит по ссылке вида exapmle.com/?a=XXX, a=XXX сразу прописывается в куках браузера.
После перехода пользователя на страницу регистрации, XXX должно прописаться в конкретном поле и, по возможности, заблокировать его от перезаписи.
Если с записью и извлеканием данных из куков проблем нету, то с автоматическим заполнением, к сожалению, есть.
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
вы из куков данные прочитали и записали их в какую-то переменную, затем просто присвойте соответствующему полю значение этой переменной и все

для более точно подсказкеи нужно видеть ваш код чтения куки
*

teoformartel

  • Новичок
  • 7
  • 0 / 0
У меня проблема в том, куда эту переменную вписывать. Я использую стандарную систему регистрации. Joomla 3.6.5.
Думаю где-то здесь components/com_users/views/registration/tmpl/default.php, но там поля берутся из components/com_users/models/forms/registration.xml, куда поставить переменную невозможно, это же XML, а не php код.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
а для чего его в принципе писать в поле, а потом пытаться блокировать, если на этапе сохранения регистрации его можно прочесть не из этого поля, а все так же из кук?
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

teoformartel

  • Новичок
  • 7
  • 0 / 0
а для чего его в принципе писать в поле, а потом пытаться блокировать, если на этапе сохранения регистрации его можно прочесть не из этого поля, а все так же из кук?
Чтобы пользователь видел, что указанно в этом поле + если в куках пусто, чтобы была возможность пользователю указать необходимые данные в этом поле
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
понятно. ну тогда в чем проблема, добавьте значит в шаблоне регистрации (components/com_users/views/registration/tmpl/default.php или в переопределенном) ваш
Код
<input name="..." value="тут значение из куки">
и все. зачем вам в принципе XML ?
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
еще раз, нужно видеть код чтения ваших кук

формы Joomla строятся по определенным правилам, имена полей можно подсмотреть в XML или в исходниках страницы фронта (ctrl+u или в инспекторе), они не меняются
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
та это ж я так понимаю вообще свое какое то поле просто, чтобы передать в сохранение регистрации значение и его там как то обработать. поэтому name думаю можно любое абсолютно.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

teoformartel

  • Новичок
  • 7
  • 0 / 0
dmitry_stas, я уже пробовал таким образом вставить поле, но ничего не получалось.
AlekVolsk, спасибо за подсказку, в коде нашёл это(код одного из полей):
Код
<div class="control-group"> 
<div class="control-label">
<label id="jform_email2-lbl" for="jform_email2" class="hasPopover required" title="Подтверждение адреса электронной почты" data-content="Подтвердите указанный вами адрес электронной почты">    Подтверждение адреса электронной почты:<span class="star"> *</span></label>  
</div>
<div class="controls">
<input type="email" name="jform[email2]" class="validate-email required" id="jform_email2" value="" size="30" required aria-required="true" />
</div>
</div>
Осталось только поменять данные на свои и в атрибут value тега input прописать переменную с нужными мне данными из куков.
Через некоторое время попробую и отпишусь получилось ли.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
я уже пробовал таким образом вставить поле, но ничего не получалось.
ничего - это очень информативно :) клавиатура переставала печатать? редактор не сохранял файл? свет выключался? что - ничего? :)
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

teoformartel

  • Новичок
  • 7
  • 0 / 0
ничего - это очень информативно :) клавиатура переставала печатать? редактор не сохранял файл? свет выключался? что - ничего? :)
Просто ничего, ничего нового не выводилось, только старые поля как были, так и остались.
« Последнее редактирование: 30.03.2017, 17:08:53 от teoformartel »
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
ну как бы... если вы пишите 123, а этого 123 по итогу нет - то имхо в 99% случаев это говорит о том, что вы не там пишите :) может шаблон регистрации переопределен в шаблоне Joomla? или может вообще регистрация не жумловая?
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

teoformartel

  • Новичок
  • 7
  • 0 / 0
ну как бы... если вы пишите 123, а этого 123 по итогу нет - то имхо в 99% случаев это говорит о том, что вы не там пишите :) может шаблон регистрации переопределен в шаблоне Joomla? или может вообще регистрация не жумловая?
Вообщем-то,  шаблон регистрации не переопределён в шаблоне Joomla и компонент регистрации точно стандартная.
Да и вообще, этот файл никак не использовался, чтобы я в нём не менял, на сайте ничего не изменится. Даже переименовывал сам файл default.php - ничего, никакой ошибки или предупреждения.
dmitry_stas, спасибо за подсказку. Так, как переопределения не было, я создал его и поле начало выводиться, но с "ненормальной" кодировкой. Вместо кириллических букв ромбики со знаками вопроса.
Может, у кого-то есть идеи по решению этой проблемы?
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
очевидно, сохранили файл в кодировке не UTF-8 без BOM ?
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

teoformartel

  • Новичок
  • 7
  • 0 / 0
Спасибо всем за помощь, всё работает ^-^
Написал небольшую инструкцию по тому, как это сделать ^-^
1. В самом начале файла index.php Вашего шаблона добавляем код, который будет записывать информацию в куки(здесь срок действия указан в три дня).
Спойлер
[свернуть]
2. Добавляем поле для регистрации(в интернете есть достаточно информации, как это сделать).
3. После того, как поле добавленно, переходим на страницу регистрации и через отрытый код страницы находим это поле(сам код поля сохраняем где-нибудь себе в файл).
Спойлер
[свернуть]
4.При создании поля мы добавляли field в /components/com_users/models/forms/registration.xml. Этому field ставим type - hidden.
5.Создаем переопределенние файла default.php из components/com_users/views/registration/tmpl/. Инструкция о том, как сделать переопределение также есть в интернете.
6. В переопределённом файле default.php из п.5 после строк:
Код
</fieldset>
<?php endif;?>
<?php endforeach;?>
добавляем свой код свой код извлекания куков и самого поля(п.3):
Спойлер
[свернуть]
Также делаем изменения в коде поля: в значении атрибута value прописываем
Код
<?php echo $referid; ?>
и добавляем, как атрибут, код
Код
 <?php echo $readonly; ?>
Вот и всё.
Если кто-то найдёт ошибку, прошу исправить или указать на нее, я исправлю.
Также, могу предполагать, что мой способ реализации этой цели может быть нерационален. Если у Вас есть способ лучше, расскажите о нём в этой теме.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Вывод дополнительного поля материала в модуле

Автор timofe

Ответов: 10
Просмотров: 1517
Последний ответ 06.10.2023, 14:02:24
от Mitriy
Вывести поля профиля Joomla

Автор romagromov

Ответов: 9
Просмотров: 601
Последний ответ 09.12.2022, 08:43:08
от sivers
Добавление поля в форму регистрации

Автор Robert24

Ответов: 3
Просмотров: 444
Последний ответ 10.10.2022, 23:35:04
от Robert24
Тип поля формы Select sql, как заполнить его через функцию php?

Автор GuDeVic

Ответов: 13
Просмотров: 986
Последний ответ 07.10.2022, 12:25:45
от fsv
Нет категорий поиска в регистрации J-BusinessDirectory

Автор tochka

Ответов: 0
Просмотров: 296
Последний ответ 28.07.2022, 09:00:11
от tochka