Форма запроса: проверка длины [закрыто]

Вопрос или проблема

У меня есть этот код на странице регистрации для отображаемого имени:

If (Len(Request.Form("name")) < 3) Or (Len(Request.Form("name")) > 50) Then                         ProblemsWithRegister = 1

Поскольку я хотел бы, чтобы пользователи использовали формат имя/фамилия, есть ли способ добавить проверку, которая не только проверяет количество символов (в настоящее время < 3 > 50), но и проверяет, состоит ли это из одного слова?
Спасибо тем, кто готов помочь.

Я пытался добавить два отдельных поля, но мне не понравилось объединять их в одно поле имени в базе данных.
Также пользователи, похоже, путались с тем, что нужно было вводить.

Ответ или решение

Чтобы обеспечить правильную проверку имени пользователя на вашей странице регистрации, вы можете использовать следующий код, который проверяет как длину строки, так и формирует ли строка два слова (имя и фамилия). Я предложу вам несколько изменений в вашем коде, чтобы сделать это более эффективным и понятным.

Вот обновленный код:

If Len(Request.Form("name")) < 3 Or Len(Request.Form("name")) > 50 Then
    ProblemsWithRegister = 1
ElseIf InStr(Request.Form("name"), " ") = 0 Then
    ProblemsWithRegister = 1 ' Если пробелов нет, это одно слово
Else
    Dim words() As String
    words = Split(Request.Form("name"), " ")

    If UBound(words) < 1 Then
        ProblemsWithRegister = 1 ' Должно быть минимум 2 слова
    End If
End If

Объяснение кода:

  1. Проверка длины: Первая часть кода проверяет, что длина введенного имени находится в пределах от 3 до 50 символов.

  2. Проверка на наличие пробелов: Вторая проверка использует InStr, чтобы определить, есть ли пробелы в строке. Если пробелов нет, это значит, что пользователь ввел одно слово.

  3. Разделение строки на слова: Если строка проходит предыдущие проверки, мы используем Split для разделения строки на массив слов. Если количество элементов в массиве (используя UBound) меньше 1, это означает, что в строке недостаточно слов (должно быть как минимум имя и фамилия).

Рекомендации:

  • Убедитесь, что пользователи получили ясные инструкции о том, что они должны вводить в поле "Имя". Напрямую указать, что требуется ввести два слова, может помочь избежать путаницы.
  • Рассмотрите возможность использования регулярных выражений, если у вас будут дополнительные требования к формату ввода.

Если у вас есть дополнительные вопросы или возникнут трудности с реализацией, пожалуйста, дайте знать.

Оцените материал
Добавить комментарий

Капча загружается...