Чтение RSS каналов

Форум

Открыть Ответить

Пара вопросов. PHP.

0

0
1
29.05.2009 19:58:2904.09.2010 13:24:09
Привет, уважаемые господа форума!))
У меня есть пара вопросов к вам касаемо php..


1.
Есть у меня модуль один... с категориями.. у кажой свой id... дело такое - всё просто - из 100 категорий нужно чтобы только в некоторых выводился определенный код... Раньше мне надо было выводить только в трех категориях, и я писал просто вот так:

if (($cid == "10") OR ($cid == "55") OR ($cid == "70")) {
  echo "определенный код для вывода";
}


Сейчас усложнилось - этот код нужно вывести в 15-20 категориях... Этот способ уже думаю не подходит, не буду же столько OR'ов писать... в идеале было бы сделать так например, чтобы я номера категорий через запятую или в столбик куда-то выписал, а скрипт уже смотрел...


__________



2.
Второй вопрос таков... Например у меня есть 10 переменных - это числа какие-то - мне нужно сделать следующее - сравнить их все друг с другом, и если какие-либо совпадают, вывести сообщение, содержащее, какие именно переменные совпадают... надеюсь понятно расписал)) спасибо)) очень поможете, если ответите.


Версия системы: SLAED CMS 2.6 Lite
Версия PHP: PHP 5
Сервер: Сервер в интернете
3.92

3.92
2
29.05.2009 20:34:00
Попробуй так:

$arrvars = array(2,5,7,11,10); //Тут пишешь свои значения, которые надо сравнивать с $cid

foreach ($arrvars as $arrcur) {
	if ($cid == $arrcur){
		//Вместо этого комента пишешь, чего тебе надо делать если совпало
		break;
	}
}
3.84

3.84
3
29.05.2009 20:45:0029.05.2009 21:03:49
пасипки, буду пробовать..

____


Большое спасибо! Первый вопрос снят)) Как просто было заюзать массив для этого))
3.92

3.92
4
29.05.2009 21:39:01
Может тебя вот так устроит?
$a0 = 2;
$a1 = 5;
$a2 = 7;
$a3 = 11;
$a4 = 10;
$a5 = 5;
$a6 = 11;
$a7 = 12;
$a8 = 7;
$a9 = 7;

$arrvars = array($a0,$a1,$a2,$a3,$a4,$a5,$a6,$a7,$a8,$a9);
$z = 1;
for($i=0; $i<count($arrvars); $i++) {
	for ($j=$z; $j<count($arrvars); $j++) {
		if ($arrvars[$i] == $arrvars[$j]) {
			echo $i." = ".$j."<br>";
		}
	}
	$z++;
}

что-то лучшее голова уже придумывать не хочет, очень уж спать охота...
3.84

3.84
5
29.05.2009 21:46:13
BugsTracker, спасибо.. вцелом не знаю, выводит на экран как то непонятно...
3.92

3.92
6
29.05.2009 22:14:34
оно выводит типа 1=5, читай: $a1=$a5
3.84

3.84
7
29.05.2009 23:03:30
Пока плохо вникаю в требуемое, но по-моему тут лучше обойтись ф-ей preg_match() с перечисленем необходимого по типу
preg_match("/2|5|7|9/", $in);
что то типо этого
3.89

3.89
8
30.05.2009 11:53:2830.05.2009 11:53:46
sam07, Вот что нужно:

Есть ~ 10 переменных. Сравниваем их друг с другом, и если есть одинаковые, то так и пишем на экран типо ''$a1 совпала с $a8'', ''$a6 совпала с $a2, $a3, $a10'' ну или как то так..

Скрипт BugsTracker'а, вроде работает, но:

В вашем примере поставвим так:

$a0 = 900; 
$a1 = 1000; 
$a2 = 1300; 
$a3 = 1300; 
$a4 = 1300; 
$a5 = 1300;


а выведет:


2 = 3
2 = 4
2 = 5
3 = 4
3 = 5
4 = 5


Можно сделать так, чтобы вывела типа ''$a2 = $a3, $a4, $a5'' ?

и еще вопросик. как прикрутить ваш скриптик к запросу?

например, есть такой запрос:

$result=$db->sql_query("SELECT did, price15, price20, price22, priceeuro200, priceeuro220, pricefam, pricekidrez, pricekidst FROM s_products");
	while(list($did, $price15, $price20, $price22, $priceeuro200, $priceeuro220, $pricefam, $pricekidrez, $pricekidst)=$db->sql_fetchrow($result)) {

}


здесь около 500 товаров, в каждом по 8 вариантов цен.

например. (10(это did(id товара)), 800, 900, 1000, 1100, 1250, 1500, 1700, 2000).

так вот. если например в каком то товаре совпадет например $price20 и $pricefam, нужно чтобы вывело на экран DID товара, у которого совпало, и что именно совпало.
в общем вот так) спасибо
3.92

3.92
9
30.05.2009 17:54:55

Можно сделать так, чтобы вывела типа ''$a2 = $a3, $a4, $a5'' ?


Можно: поменяй строку:
echo $i." = ".$j."<br>";

на:
echo "\$a".$i." = \$a".$j."<br>";
3.84

3.84
10
30.05.2009 18:57:3730.05.2009 18:58:05
BugsTracker, простите за мою вредностть, Ваш код верный, спору нет, но по правилам конкатенации все таки так будет лучше
echo '$a' .$i .' = $a' .$j .'<br>';
3.89

3.89
Открыть Ответить
вывестибылокатегорияхтолькоопределенныйпростоестьпараquotнужновопросовчтобыкатегорийкакиеменя
Хотите опробовать SLAED CMS в действии?

Технологии

PHP MySQL HTML 5 CSS 3 jQuery jQuery UI

Контакты

  • D-49179, Deutschland
    Ostercappeln, Im Siek 6
  • +49 176 61966679

  • https://slaed.net
Идеи и предложения
Обратная связь