Запретить пробелы в php

Запретить пробелы в php

Помогите запретить пробел. Такая функция:

Я хочу, чтобы пользователь, который хочет зарегиться, не смог поставить пробел между словами. НЕ ПУТАЙТЕ! Мне не нужно, чтобы пробел был именно между словами, а не в начале и в конце слова, который можно обрезать с помощью функции trim.

1) «пробел\логин\пробел» — можно, т.к. эти пробелы обрезает trim
2) «логин\пробел\продолжение логина» — вот этот пробел я хочу запретить.

Что в кратком переводе «не используйте эту дрянь, а используйте preg_match».

В-третьих, ты не подумал, что если пользователь введёт пробел в конец логина, например, а ты ему не скажешь о том, что пробелы в конце логина запрещены — он будет думать, что у него логин с пробелом, а по-настоящему, ты ему этот пробел молча вырежешь. Вот он и будет, бедный, тыкаться к тебе с логином с пробелом, а ему система будет отвечать, что пароль неверный.

98% из тысячи моих постов сделаны в профильном подфоруме. Я не накручиваю свои посты болтанием в «курилке», а ты?

Во-первых, вот цитата из мануала по eregi:
В-третьих, ты не подумал, что если пользователь введёт пробел в конец логина, например, а ты ему не скажешь о том, что пробелы в конце логина запрещены — он будет думать, что у него логин с пробелом, а по-настоящему, ты ему этот пробел молча вырежешь. Вот он и будет, бедный, тыкаться к тебе с логином с пробелом, а ему система будет отвечать, что пароль неверный.

Читайте также:  Php путь от www

Я об этом подумал, поэтому на странице регистрации есть предупреждение о том, что пробелы не ставить.

Функция говорит, что если введенные символы не подходят к разрешенным, то остановиться:

Как мне запретить пробел между логином??

Источник

Как запретить пробелу?

Как запретить скачивание файла но не запретить его исполнение.
Я составил сайт простенький. На нем у меня есть исполнительный файл в формате JAR ( Java — архив).

Как разделить строку на подстроки по пробелу
Создана форма form1.h на ней button1, textbox1 and listbox1, but я не знаю как там писать и связать.

Как разбить строку на подстроки по пробелу?
Расскажите пожалуйста как работать со строками поэлементно. И как выделять слова в строках по.

Как отключить нажатие на кнопку по пробелу
По пробелу нажимается последняя активная кнопка. как убрать?

Пробелы убрать и не будет учет пробелов

if (!preg_match("/^[-a-zA-Z0-9.-_()]+$/", $_POST['register_username']))
if (!preg_match("/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]$/i", $_POST['register_email'])) {

Как убрать в synedit автодополнение по пробелу?
Всем добрый вечер. Кто работал с компонентом synedit подскажите, пожалуйста, как убрать у.

Excel. Как разделить столбец по первому пробелу?
Добрый день! Есть таблица в Excel. Нужно каким-то образом разделить данные по первому пробелу.

Strtok как разбить строку пополам по первому пробелу?
Есть вот такая строка: 28 -1.221636 -1.183837 32.839973 0.885457 -0.348518 -0.307412 0.357200.

Как считать N количество строк и в каждой разделить строку на два числа по пробелу и перевести их в real?
Строки типа 7.0 0.3 или 3.7 15.97 Их вводится N количество раз, нужно каждый раз разделить ее по.

Питание ЮСБ -запретить отключение или запретить?
у меня вопрос- есть прибор -типа увеличительный микроскоп подключается по юсб, но иногда его.

Источник

Запретить пробелы в php

Помогите запретить пробел. Такая функция:

Я хочу, чтобы пользователь, который хочет зарегиться, не смог поставить пробел между словами. НЕ ПУТАЙТЕ! Мне не нужно, чтобы пробел был именно между словами, а не в начале и в конце слова, который можно обрезать с помощью функции trim.

1) «пробел\логин\пробел» — можно, т.к. эти пробелы обрезает trim
2) «логин\пробел\продолжение логина» — вот этот пробел я хочу запретить.

Что в кратком переводе «не используйте эту дрянь, а используйте preg_match».

В-третьих, ты не подумал, что если пользователь введёт пробел в конец логина, например, а ты ему не скажешь о том, что пробелы в конце логина запрещены — он будет думать, что у него логин с пробелом, а по-настоящему, ты ему этот пробел молча вырежешь. Вот он и будет, бедный, тыкаться к тебе с логином с пробелом, а ему система будет отвечать, что пароль неверный.

98% из тысячи моих постов сделаны в профильном подфоруме. Я не накручиваю свои посты болтанием в «курилке», а ты?

Во-первых, вот цитата из мануала по eregi:
В-третьих, ты не подумал, что если пользователь введёт пробел в конец логина, например, а ты ему не скажешь о том, что пробелы в конце логина запрещены — он будет думать, что у него логин с пробелом, а по-настоящему, ты ему этот пробел молча вырежешь. Вот он и будет, бедный, тыкаться к тебе с логином с пробелом, а ему система будет отвечать, что пароль неверный.

Я об этом подумал, поэтому на странице регистрации есть предупреждение о том, что пробелы не ставить.

Функция говорит, что если введенные символы не подходят к разрешенным, то остановиться:

Как мне запретить пробел между логином??

Источник

Форум PHP программистов ► PHP практикум ► PHP для начинающих

Сообщений: 67
Пользователь №: 35281
На форуме:
Карма:

Как при регистрации запретить ввод определенных символов в поля? Чтобы данные выглядели православно, без всяких !@#$%^&♀†ž ? Или напротив разрешить только буквы и цифры?

php
if (preg_match(«/[^a-z,A-Z,0-9,а-я,А-Я,\-,\_]/», $user_name))

echo «ошибка, недопустимые символы»;
exit;
>

Благодарю!) Ещё вопросик, при использовании данной конструкции отпадает надобность использования stripslashes(), htmlspecialchars() и trim()?

Цитата (Игорь_Vasinsky @ 11.10.2012 — 19:47)
для православности разреши + тогда всё будет сразу понятно

Запятые там лишние, и символ _ и дефис экранировать не надо, дефис экранируется только если находится в середине символьного класса. К тому же пропустил букву ё, перечислять отдельно сторчные и прописные буквы то же не рационально, для этого есть модификатор i.

если ты о стрипслеше и прочем — то абсолютно не зачем, т.к. паттерн в preg_match — пропустит только то что ты указал.

Цитата (Игорь_Vasinsky @ 11.10.2012 — 19:55)
если ты о стрипслеше и прочем — то абсолютно не зачем, т.к. паттерн в preg_match — пропустит только то что ты указал.

Ну извиняюсь, просто учился писать регистрацию по методу Евгения Попова 😀

$login = stripslashes($login);
$login = htmlspecialchars($login);
$password = stripslashes($password);
$password = htmlspecialchars($password);
$login = trim($login);
$password = trim($password);

Источник

как устранить пробел в формах в php

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

PHP не может предотвратить прямую отправку формы, которая попадает в область javascript. Я предполагаю, что вы имеете в виду проверку на наличие пробелов в отправленной форме.

4 ответа

Для PHP — проверка на стороне сервера (после отправки формы)

Комбинация trim() и empty() вернет true, если передана строка с пробелом.

$a = ' '; $a = trim($a); if (empty($a)) print 'Empty!'; // Empty! 

Sidenote: при нормальных обстоятельствах всегда полезно настраивать пользовательский ввод.

Для Javascript — проверка на стороне клиента (перед отправкой формы)

Используйте событие onSubmit, чтобы запустить функцию проверки:

В моей фирме мы считаем «хорошей практикой» проверку как через клиента, так и через сервер. Просто мысль.

Используйте trim() , а затем протестируйте его с нулевыми значениями.

Майк Б представляет хороший момент. Вы можете запретить отправку формы с помощью Javascript. Если вы полагаетесь на PHP, форма будет отправлена, но вы можете представить ту же форму пользователю с сообщением об ошибке.

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

+1 для плана B. Всегда проверяйте один и тот же ввод снова в php, так как нет ничего, что помешает пользователю просто создать свою собственную форму и отправить ее на вашу страницу.

function validate(form) < ok = true; for (var i = 0, il = form.elements.length; i < il; ++i) < form.elements[i].value = form.elements[i].value .replace(/^\s\s*/, '') .replace(/\s\s*$/, ''); ok &= !!form.elements[i].value; >if (!ok) alert("Oh hey - type something in these boxes, k?"); return ok; > 
$myVar = trim($_POST['myFormVariable']); if (!$myVar) < echo "Oh hey, you should type something."; >else

\s\s* == \s+ . Кроме того, почему бы не просто form.elements[i].value = form.elements[i].value.replace(/^\s+|\s+$/g, »); ?

потому что это намного медленнее. Регулярное выражение должно анализировать всю строку, а не только первые (и последние) символы, которые являются пробелами. См. Эту статью, которая тестирует 11 различных типов функций обрезки . Обратите особое внимание на разницу между функциями 1 и 2 (я использовал № 1 выше). \s+ на самом деле медленнее, чем \s\s*

Ещё вопросы

  • 1 Как работает эта программа? Как работает метод firstGreaterEqual
  • 1 Nodejs асинхронность исполнения
  • 1 Android SetPixels () Объяснение и пример?
  • 0 Как написать обыкновенную функцию jquery для отображения всплывающей подсказки
  • 0 Не могу знать поведение клика на отключенном элементе
  • 0 TypeError: window.parent.updatepic не является функцией, когда я пытаюсь получить доступ к функции из iframe к родителю его окна
  • 0 WxWidgets DrawText для печати переменной на экране
  • 0 Если элемент списка имеет дочерний список, добавьте стиль CSS
  • 0 нг-если внутри нг-повтор не обновляется с контроллера
  • 1 Новый экземпляр программы создается при прикосновении к тегу NFC
  • 0 Замените тег другим тегом
  • 0 получение данных JSON со страницы php
  • 1 Сделать близлежащие пиксели белыми opencv
  • 0 Как найти двоичные файлы сервера MS Word ActiveX и зарегистрировать их?
  • 0 Как сделать копии (новые экземпляры) функции замыкания?
  • 1 Метод установки не вызывается в Hadoop Mapper
  • 1 Заполните один столбец последнего элемента в группе значением другого столбца
  • 0 функция PHP при загрузке страницы
  • 1 Как посчитать, сколько раз слово появляется в массиве
  • 0 Обработчики событий не запускаются
  • 1 вставить новый экземпляр, используя API GCE
  • 1 Почему рисовать штриховые линии на холсте не работает?
  • 0 Назначение значения?
  • 0 SQL — вставка новой строки зависит от предыдущих данных из той же таблицы
  • 0 Проблема с SQL-запросом (работа с 3 таблицами)
  • 0 Вызов метода производного класса из общей ссылки на базовый класс
  • 0 sqlsrv драйвер для Windows PHP PDO SQL сервер
  • 0 Выпадающий не показывает значение в IE
  • 0 как управлять стилем HTML кода в Qprinter
  • 0 Каково правильное определение указателя на постоянный массив?
  • 1 Питон: быстрая сортировка с медианой из трех
  • 0 получить идентификатор из ng-repeat
  • 0 JQuery AutoCompleter — мульти и пользовательские данные
  • 0 Использование контроллеров, добавленных маршрутами, для объявления переменных $ scope в Angular JS?
  • 1 Почему я получаю неопределенный при использовании document.write ()?
  • 0 Как обновить количество, выполнив несколько запросов?
  • 1 WebRTC — создать объект PeerConnectionFactory
  • 0 Проблемы с выпадающим списком навигации по CSS
  • 1 Как прочитать координаты X и Y строки в файле типа Word или Txt?
  • 1 Значения атрибутов привязки данных к комбинированному списку
  • 1 выбрать отдельные строки в мультииндексном панде данных [дубликаты]
  • 0 Бесконечный цикл Date на одном сервере, но работает на другом и localhost
  • 1 Если в привязке данных нет пространства имен атрибута, intellisense работать не будет
  • 0 Apple Mach-O Linker (Id) Ошибка в xcode
  • 1 Scrollview для Itemscontrol grid
  • 0 Как отфильтровать определенную базу данных с помощью grep
  • 1 Pyspark — отдельные записи на основе 2 столбцов в датафрейме
  • 0 Как не вводить пароль в декларативную директиву html / angularjs?
  • 1 Python (Flask RESTful API) Изменение объектов
  • 1 Получить все div под div с известным идентификатором и перебрать его

Источник

Оцените статью