Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Использование символов из формы
 
 автор: NickD   (18.05.2011 в 16:17)   письмо автору
 
 

Добрый день знатоки PHP! Есть форма ввода, в которую возможен ввод цифр, латинских букв и символа "/". Длина "слова" не более 15 символов. Подскажите, каким образом можно проанализировать символы из формы и зафиксировать их для дальнейшего их использования? Т.е. использовать для дальнейшей работы только введённые символы.

  Ответить  
 
 автор: cheops   (18.05.2011 в 16:25)   письмо автору
 
   для: NickD   (18.05.2011 в 16:17)
 

Имеется в виду отрезать от введенных только первые 15 символов?

Для этого удобно воспользоваться функцией substr()
<?php
  $str 
substr($str015);
?>
PS Или нужно добавить проверку по всем указанным параметрам (в этом случае разумнее будет воспользоваться регулярными выражениями)?

  Ответить  
 
 автор: NickD   (18.05.2011 в 17:54)   письмо автору
 
   для: cheops   (18.05.2011 в 16:25)
 

Нет, отрезать ничего не надо. Вводимое "слово" уже вводится в форму с условием - не более 15 символов.

  Ответить  
 
 автор: lightning.say   (18.05.2011 в 16:28)   письмо автору
 
   для: NickD   (18.05.2011 в 16:17)
 

в смысле проанализировать? вам какой анализ нужен?
в дальнейшем их можо передать методом Post например из формы в php программу в виде переменной

  Ответить  
 
 автор: NickD   (18.05.2011 в 18:19)   письмо автору
 
   для: lightning.say   (18.05.2011 в 16:28)
 

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

  Ответить  
 
 автор: lightning.say   (19.05.2011 в 09:46)   письмо автору
 
   для: NickD   (18.05.2011 в 18:19)
 

а пример можете привести?

  Ответить  
 
 автор: NickD   (19.05.2011 в 09:56)   письмо автору
 
   для: lightning.say   (19.05.2011 в 09:46)
 

Можно. Например, введено в форму "слово" - andxp5g3i8/12 (может быть любое словосочетание).
Теперь проводится анализ. На первом знакоместе буква "а", присваиваем это значение первой переменной. На втором знакоместе "n" - присваиваем это значение второй переменной и т.д. На 13-м месте "2" - присваиваем это значение 13-й переменной. 14-е знакоместо пустое - прекращаем анализ, т.к. пустое знакоместо - признак окончания "слова" и работаем с переменными.

  Ответить  
 
 автор: lightning.say   (19.05.2011 в 10:19)   письмо автору
 
   для: NickD   (19.05.2011 в 09:56)
 

а что мешает присвоить определенной переменной введенное слово как строковой переменной, а потом обращаться к ее элементам как элементам массива?
<?
$str 
"andxp5g3i8/12"
echo 
"$str[0] <br>"// a
echo "$str[1] <br>"// n
...
?>

  Ответить  
 
 автор: NickD   (19.05.2011 в 12:07)   письмо автору
 
   для: lightning.say   (19.05.2011 в 10:19)
 

Да, в принципе, ничего не мешает. Надо попробовать. Но ещё надо выполнить условие - прекратить обращение к пустым элементам массива, в данном примере соответствующих 14-му и 15-му знакоместам "слова". А "слово" может от 3-х до 15-ти символов.

  Ответить  
 
 автор: Lotanaen   (19.05.2011 в 12:14)   письмо автору
 
   для: NickD   (19.05.2011 в 12:07)
 

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

  Ответить  
 
 автор: lightning.say   (19.05.2011 в 12:18)   письмо автору
 
   для: NickD   (19.05.2011 в 12:07)
 

ну количество элементов массива можно определить по длине введенной строки, есть такая функция strlen, в вашем примере длина 13 тогда и не надо производить действия с 14-м и 15-м так как их нет

  Ответить  
 
 автор: cheops   (19.05.2011 в 12:20)   письмо автору
 
   для: NickD   (19.05.2011 в 12:07)
 

Существование этих символов можно проверить при помощи функции isset()
<?php 
  $str 
"andxp5g3i8/12";  
  for(
$i 0$i strlen($str); $i++)
  {
    if(isset(
$str[$i])) echo $str[$i]."<br>";
  }
?>

  Ответить  
 
 автор: Lotanaen   (19.05.2011 в 12:21)   письмо автору
 
   для: NickD   (19.05.2011 в 12:07)
 

если вам нужно только проверить введенные символы на соответствие, то проще регулярными выражениями воспользоваться...

  Ответить  
 
 автор: NickD   (19.05.2011 в 12:48)   письмо автору
 
   для: Lotanaen   (19.05.2011 в 12:21)
 

Спасибо большое за внимание! Буду проверять предложенные варианты. Может мои вопросы показались простыми - извиняюсь, начинающий. ;-)

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования