Перейти к содержанию
Форум поддержки пользователей VamShop

Как сделать * - обязательно поле необязательным?


Рекомендуемые сообщения

Ну так посмотрите код.

Вот например проверка поля имя:


if (strlen($firstname) < ENTRY_FIRST_NAME_MIN_LENGTH) {

$error = true;



$messageStack->add('create_account', ENTRY_FIRST_NAME_ERROR);

}
[/code] а что б js ошибки убрать, которые посвечивают поля, убирайте название поля из:
[code]
vam_draw_hidden_field('required', 'gender,firstname,lastname,dob,email,address,postcode,city,state,country,telephone,pass,confirmation', 'id="required"')

Ссылка на сообщение
Поделиться на другие сайты

Необходимо сделать поле "Отчество" обязательным для заполнения:

1. Какой кусок кода нужно вставить в файл /create_account.php ?

2. Какое слово нужно добавить в js, чтобы подсвечивалась ошибка?

3. Какой файл нужно править для того, чтобы добавить "*" возле поля?

Ссылка на сообщение
Поделиться на другие сайты

Я вот в сообщении номер 3 примерно указал, какой код нужно добавлять для проверки ошибки.

В required нужно добавлять id название поля, secondname как я помню.

* можно поставить например в самом шаблоне /templates/шаблон/module/create_account.html

Ссылка на сообщение
Поделиться на другие сайты

Не получается, вставил в /create_account.php код

	if (strlen($secondname) < ENTRY_SECOND_NAME_MIN_LENGTH) {
$error = true;

$messageStack->add('create_account', ENTRY_SECOND_NAME_ERROR);
}[/code] В поле
[code]vam_draw_hidden_field('required', 'gender,firstname,lastname,dob,email,address,postcode,city,state,country,telephone,pass,confirmation', 'id="required"')

Добавил secondname

В /lang/russian/russian.php добавил звёздочку (ну это само собой). Протестировал регистрационную форму (не заполняя поле "Отчество"), ошибка не показалась и зарегистрировался без Отчества.

Тыкните пожалуйста пальцем, на мою ошибку, файл /create_account.php прилагается.

create_account.php

Ссылка на сообщение
Поделиться на другие сайты

В vam_draw_hiddden_field что-то не видно в списке secondname, добавьте и ещё попробуйте в /templates/vamshop/module/create_account.html заменить:


<p>{#text_secondname#} {$INPUT_SECONDNAME}</p>
[/code] на:
[code]
<p><label for="secondname" title="{$ENTRY_SECOND_NAME_ERROR}">{#text_secondname#}</label> {$INPUT_SECONDNAME}</p>

Ссылка на сообщение
Поделиться на другие сайты

В vam_draw_hiddden_field что-то не видно в списке secondname

В прикреплённом файле предыдущего моего поста, было добавлено secondname

vam_draw_hidden_field('required', 'gender,firstname,secondname,lastname,dob,email,address,postcode,city,state,country,telephone,pass,confirmation', 'id="required"'));
и ещё попробуйте в /templates/vamshop/module/create_account.html заменить:

<p>{#text_secondname#} {$INPUT_SECONDNAME}</p>
[/code] на:
[code]
<p><label for="secondname" title="{$ENTRY_SECOND_NAME_ERROR}">{#text_secondname#}</label> {$INPUT_SECONDNAME}</p>

Не помогает  ???

Ссылка на сообщение
Поделиться на другие сайты

Ещё нужно поправить /includes/form_check.js.php

После:


if(f.name=='lastname' && f.value.length<<?php echo ENTRY_FIRST_NAME_MIN_LENGTH; ?> && f.id!='email'){cf_adderr(f)}
[/code] добавьте:
[code]
if(f.name=='secondname' && f.value.length<<?php echo ENTRY_FIRST_NAME_MIN_LENGTH; ?> && f.id!='email'){cf_adderr(f)}

Ссылка на сообщение
Поделиться на другие сайты

Ещё один вопрос: как сделать, чтобы в админка-покупатели-клиенты, после нажатия кнопки редактировать, напротив поля "Отчество", была надпись как и у всех остальных "* Обязательно"?

Ссылка на сообщение
Поделиться на другие сайты
  • 4 weeks later...

С подсвечиванием поля "Отчество" на странице создания аккаунта /create_account.php разобрались.

Теперь мне нужно, чтобы это же поле подсвечивалось на странице оформления заказа (без регистрации) /checkout_alternative.php

VaM помоги пожалуйста, что и где править?

Ссылка на сообщение
Поделиться на другие сайты

Делается аналогичным образом.

т.е. просто в список required добавить secondname в файле /checkout_laternative.php

Тоже самое, что и в create_account

Ссылка на сообщение
Поделиться на другие сайты
  • 1 year later...

а что б js ошибки убрать, которые посвечивают поля, убирайте название поля из:


vam_draw_hidden_field('required', 'gender,firstname,lastname,dob,email,address,postcode,city,state,country,telephone,pass,confirmation', 'id="required"')
[/code]

Я убрал отсюда E-mail, поначалу пропускает, в самом конце после отправки заказа ошибка  "Не удалось отправить email.

Ошибка: Произошла ошибка при инициализации Mail функции."

Можно ли как-то сделать необязательным поле E-mail ?

Ссылка на сообщение
Поделиться на другие сайты

Можно ли как-то сделать необязательным поле E-mail ?

Всё можно сделать и это тоже. Только вам прийдётся половину магазина перелопатить. Почти всё "общение" с покупателями идёт через e-mail.

Ссылка на сообщение
Поделиться на другие сайты

Посмотрите как сейчас работают передовые интернет-магазины - там минимум полей для оформления заказа: имя, телефон - остальное по желанию клиента либо менеджер по телефону узнает. Все ради того, чтобы поменьше мучать чайников интернета - а таких покупателей поверьте большинство. Рассмотрите пожалуйста возможность в следующих обновлениях  сделать необязательным поле мейл в настройках магазина

Ссылка на сообщение
Поделиться на другие сайты
×
×
  • Создать...