Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 14.10.2014, 15:11
Аспирант
Отправить личное сообщение для DDSSDD Посмотреть профиль Найти все сообщения от DDSSDD
 
Регистрация: 06.04.2011
Сообщений: 53

Значение переменной через запятую
Подскажите пожалуйста.
Есть поле, в котором значение введено через запятую:
Иванов, Сидоров, Петров и т. д.

Данные передаются методом PОST обработчику PHP:


$name = $_POST[name];


Соответственно переменная $name имеет значение: Иванов, Сидоров, Петров и т. д.

Мне нужно через оператор if вывести данные если соблюдается условие:
1. Получен только Иванов - выводим данные;
2. Получен Иванов и др. - тоже выводим данные;
4. Не получен Иванов - не выводим данные;
5. Не получен Иванов, но получены другие - не выводим данные.

Делал так:

if ($name=="Иванов") {
echo ' <p>Иванов</p> ';}


Это работает, если в поле введено только одно имя Иванов.
Если же ввести несколько значений через запятую: Иванов, Сидоров, Петров.
Ничего не выводит...

Задача, я так понимаю элементарная, но вот гуглю уже несколько часов и никак не могу решить проблему.
В PHP не силен.
Возможно как то через массив это все сделать. Вся проблема в получаемом значении через запятую...

То есть по сути мой вопрос заключается в том: Как выбрать из строки (которая является значением переменной), в которой данные указаны через запятую одно значение и через оператор вывести данные в зависимости от того есть это значение в строке или нет.
Ответить с цитированием
  #2 (permalink)  
Старый 14.10.2014, 15:22
Аспирант
Отправить личное сообщение для voral Посмотреть профиль Найти все сообщения от voral
 
Регистрация: 03.10.2014
Сообщений: 67

explode(',',$_POST['name']) вам может помочь
Ответить с цитированием
  #3 (permalink)  
Старый 14.10.2014, 15:22
Аспирант
Отправить личное сообщение для voral Посмотреть профиль Найти все сообщения от voral
 
Регистрация: 03.10.2014
Сообщений: 67

только про пробелы не забывайте
Ответить с цитированием
  #4 (permalink)  
Старый 14.10.2014, 15:38
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,118

Сообщение от DDSSDD
1. Получен только Иванов - выводим данные;
2. Получен Иванов и др. - тоже выводим данные;
4. Не получен Иванов - не выводим данные;
5. Не получен Иванов, но получены другие - не выводим данные.
http://php-include.ru/stati/poisk-podstroki-v-stroke
Ответить с цитированием
  #5 (permalink)  
Старый 14.10.2014, 16:01
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

ksa, а как тут это поможет? Покажи пример.
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #6 (permalink)  
Старый 14.10.2014, 16:10
Аспирант
Отправить личное сообщение для voral Посмотреть профиль Найти все сообщения от voral
 
Регистрация: 03.10.2014
Сообщений: 67

Сообщение от danik.js
ksa, а как тут это поможет? Покажи пример.
А кстати, если условия здесь указаны полностью и правильно, то поиска подстроки вполне достаточно. Т.к. все 4 можно свести к двум вариантам:
1. Если фамилия иванов присутствует - выводим
2. Не присутствует - не выводим
Ответить с цитированием
  #7 (permalink)  
Старый 14.10.2014, 16:10
Аспирант
Отправить личное сообщение для DDSSDD Посмотреть профиль Найти все сообщения от DDSSDD
 
Регистрация: 06.04.2011
Сообщений: 53

Спасибо - работает!
Никогда б не догадался сформулировать запрос гуглу "Поиск подстроки в строке"
Ответить с цитированием
  #8 (permalink)  
Старый 14.10.2014, 16:14
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,118

Сообщение от danik.js
а как тут это поможет? Покажи пример
С ПХП не работаю...
Но судя по условиям ТСа, достаточно простого вхождения "Иванов" в полученую строку для вывода информации...

На COS это выглядит так

if %request.Data("name",1)["Иванов" {
	// какой-то там вывод
}

Последний раз редактировалось ksa, 14.10.2014 в 16:17.
Ответить с цитированием
  #9 (permalink)  
Старый 14.10.2014, 16:38
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от ksa
достаточно простого вхождения "Иванов" в полученую строку для вывода информации
$name = 'Сидоров, Иванова';
if ($strpos($name, 'Иванов') !== false) {
    // упс..
}
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #10 (permalink)  
Старый 14.10.2014, 16:58
Аспирант
Отправить личное сообщение для voral Посмотреть профиль Найти все сообщения от voral
 
Регистрация: 03.10.2014
Сообщений: 67

точняк. Тогда можно регекспами взять
хотя преобразовать в массив - универсальнее.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как получить значение переменной из игры на HTML5? Dimaz Общие вопросы Javascript 6 10.08.2014 16:27
Возможно ли передать значение переменной в "obCanvas.fillStyle" ? salno Общие вопросы Javascript 0 01.07.2013 21:28
Передать значение переменной из php в js wayzer jQuery 6 09.09.2012 23:26
как передовать и парсить значение переменной по URL? FATALITY Общие вопросы Javascript 10 25.03.2010 19:32
Переменная от переменной или как к имени переменной конкатенировать значение другой Aderba jQuery 5 12.11.2008 15:25