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

Форум PHP

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

 

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

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

тема: Работа с переменной
 
 автор: nikolai   (25.03.2010 в 00:21)   письмо автору
 
 

Помогите плзз разобраться.

$id = 1,2,3,4,5;

Надо перебрать id по цифрам и вогнать все это в другую ($id2) чтоб выполнялось действие, т.е
Словами так - Если ($id == любому значению из $id) действие выполняется.
if ($id == $id2)
действие выполняется


Походу надо через implode() и foreach() но у меня не чего не получается :(

Заранее спасибо.

  Ответить  
 
 автор: oliss   (25.03.2010 в 00:35)   письмо автору
 
   для: nikolai   (25.03.2010 в 00:21)
 

А слабо, ( или религия не позволяет : ) написать то, что вы делали ,и что не получилось ,в смысле код проблемы.

  Ответить  
 
 автор: Slo_Nik   (25.03.2010 в 00:52)   письмо автору
 
   для: nikolai   (25.03.2010 в 00:21)
 

вот что сказано о implode() в умной книге
"implode($$delimeter, $arr) объеденяет элементы массива строк $arr в единую строку, разделяя элементы подстрокой, заданной в параметре $delimeter"
а где у Вас массив? и зачем что то объеденять?

попробуйте вывести в окно браузера переменну id так как Вы присвоили ей значение...

создайте массив и обходите его потом foreach()
вот может это Вам поможет
$id = array("1","2","3");
$id2 = 1;
foreach($id as $v){
if($id2 == $v){
echo "Выполняется действие";
}
}

  Ответить  
 
 автор: nikolai   (25.03.2010 в 01:17)   письмо автору
 
   для: Slo_Nik   (25.03.2010 в 00:52)
 

Переменная формируется через input type="text" где задается в ручную через запятую те цифры, которые надо.

а как мне тогда сформировать $id = array("1","2","3"); через input type="text" ?

  Ответить  
 
 автор: Николай2357   (25.03.2010 в 05:55)   письмо автору
 
   для: nikolai   (25.03.2010 в 01:17)
 

input type="text" name="id[]"
так как то...

  Ответить  
 
 автор: GeorgeIV   (25.03.2010 в 09:56)   письмо автору
 
   для: nikolai   (25.03.2010 в 01:17)
 

используй не implode а explode c разделителем запятая

  Ответить  
 
 автор: Slo_Nik   (25.03.2010 в 10:43)   письмо автору
 
   для: nikolai   (25.03.2010 в 01:17)
 

>Переменная формируется через input type="text" где задается в ручную через запятую те цифры, которые надо.

ну откуда мне знать про input ? надо же в своём вопросе было это указать...

вот же сразу написали про то, что выложите полностью код

>oliss
>А слабо, ( или религия не позволяет : ) написать то, что вы делали ,и что не получилось ,в >смысле код проблемы.

>а как мне тогда сформировать $id = array("1","2","3"); через input type="text"

Вам уже подсказали, через explode();

или

создав несколько input-ов с одинаковым именем


<input type='text' name='name[]' />
<input type='text' name='name[]' />
.........................................................

  Ответить  
 
 автор: GeorgeIV   (25.03.2010 в 10:55)   письмо автору
 
   для: Slo_Nik   (25.03.2010 в 10:43)
 

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

  Ответить  
 
 автор: nikolai   (25.03.2010 в 11:47)   письмо автору
 
   для: GeorgeIV   (25.03.2010 в 10:55)
 

Всем спасибо, сделал

$id = 1,2,3,4,5;

$cc = explode(",", $id);

foreach($cc as $v)
if($id2 == $v )
{
действие выполняется
}

  Ответить  
 
 автор: Usta   (25.03.2010 в 12:02)   письмо автору
 
   для: nikolai   (25.03.2010 в 11:47)
 

Можно воспользоваться функцией in_array()

  Ответить  
 
 автор: oliss   (25.03.2010 в 14:15)   письмо автору
 
   для: Usta   (25.03.2010 в 12:02)
 

+!

  Ответить  
 
 автор: sasha1133   (26.03.2010 в 03:30)   письмо автору
 
   для: Usta   (25.03.2010 в 12:02)
 

только хотел написать. По моему самый наглядный вариант получится именно с in_array()

  Ответить  
 
 автор: nikolai   (29.03.2010 в 13:38)   письмо автору
 
   для: sasha1133   (26.03.2010 в 03:30)
 

Не захотел создавать новой темы, спрошу в этой
Есть переменная
$id = 1,2,3,4,5;
Надо получить:
$hidden_ids = array("1","2","3","4","5");
Или
$hidden_ids = array(1,2,3,4,5);


Как это сделать?
Так вариант не проходит
$hidden_ids = array($id);

  Ответить  
 
 автор: neadekvat   (29.03.2010 в 13:41)   письмо автору
 
   для: nikolai   (29.03.2010 в 13:38)
 

explode();
разделитель - запятая.

  Ответить  
 
 автор: nikolai   (29.03.2010 в 16:17)   письмо автору
 
   для: neadekvat   (29.03.2010 в 13:41)
 

Спасибо все сделал

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

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