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

Форум PHP

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

 

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

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

тема: Если переменная равна любому значению из массива то...
 
 автор: jin603   (29.01.2010 в 18:06)   письмо автору
 
 

имеются:
переменная $a
массив $b [ в нем несколько значений ]

подскажите как сделать:

if ($a = любому значению из этого массива $b)
{
echo `текст`;
}

P.S. можно тоже самое другим способом, не через if

  Ответить  
 
 автор: Тень   (29.01.2010 в 18:09)   письмо автору
 
   для: jin603   (29.01.2010 в 18:06)
 

in_array()

  Ответить  
 
 автор: jin603   (29.01.2010 в 18:36)   письмо автору
 
   для: Тень   (29.01.2010 в 18:09)
 

перепишу вопрос
имеются:
переменная $a - передаваемая GET
массив $b [ в нем множество значений ] все значения массив получает из БД, и значей может быть очень много (в код самостоятельно их не прописываю)

подскажите как сделать:

Передалась переменная $a, php должен сравнить со всеми значениями массива $b.
Если хоть одно значение массива совпадает со значением переменной, то вывести текст

if ($a = любому значению из этого массива $b) -
{
echo `текст`;
}

P.S. можно тоже самое другим способом, не через if

Тень, вы меня извините, мож я просто не допонял вашей идеи.
Но не пойму как их сравнить при помощи in_array(),
если явно не прописывать значения массива $b
мне необходимо чтобы он сравнивал со всеми имеющимися значеями массива (база будет рости, а с ним и значения массива)

  Ответить  
 
 автор: Тень   (29.01.2010 в 18:38)   письмо автору
 
   для: jin603   (29.01.2010 в 18:36)
 

Если значения в таблице, то зачем их тянуть (тем более, Вы сами сказали, что их много) из этой таблицы? Обычный SELECT-запрос.

  Ответить  
 
 автор: jin603   (29.01.2010 в 18:53)   письмо автору
 
   для: Тень   (29.01.2010 в 18:38)
 

мне просто надо чтобы он их сравнивал
а потом вывел текст если значения совпадут
и при совпадении еще соединялся с другой таблицей базы

подкажите как переменную сравнить со всеми значениями массива без явного их прописывания

  Ответить  
 
 автор: Тень   (29.01.2010 в 18:55)   письмо автору
 
   для: jin603   (29.01.2010 в 18:53)
 

И? Я же сказал -- SELECT-запрос. Скажи, чем он тебя не устраивает?

  Ответить  
 
 автор: jin603   (29.01.2010 в 19:27)   письмо автору
 
   для: Тень   (29.01.2010 в 18:55)
 

смысл такой:
берется таблица БД из нее в массив записываюся значения, если одно любое значение совпадет, то из этой таблицы выводятся остальные данные и вносятся в html код

эт я сам придумал:))))))))))))))
но пока тока учусь и отталкиваюсь от примитивного и более наглядного для меня

но если предложите другой вариант, то я буду очень признателен

  Ответить  
 
 автор: t3ma   (29.01.2010 в 19:08)   письмо автору
 
   для: jin603   (29.01.2010 в 18:06)
 


<?php
$search 
array_search($a$b);
 if (
$search !== false)
    echo 
"текст";
?>

  Ответить  
 
 автор: jin603   (29.01.2010 в 19:35)   письмо автору
 
   для: t3ma   (29.01.2010 в 19:08)
 

t3ma СПАСИБО ВАМ ДОБРЫЙ ЧЕЛОВЕК!!!

Тень Вам тоже спасибо.

  Ответить  
 
 автор: Usta   (30.01.2010 в 02:50)   письмо автору
 
   для: jin603   (29.01.2010 в 19:35)
 

Вы пытаетесь еду запихнуть через заднее отверстие и через рот ее достать! Вам Тень ясно сказал, что лучше использовать SELECT. Он как раз для этого и служит. Начинаем урок:
есть БД таблица `car` у нее есть id, name, type, color, probeg, cena
на нужно передать через GET параметр а:

<? echo "<a href='index.php?a=3'>Хонда</a> ?>

теперь нам не нужно брать все значения из БД таблицы `car` id(1,3,5,6,7,8,9,14,...).
Нам нуден только 3.
делаем запрос.

<?
$a 
intval($_GET['a']); // получаем только число или 0
if($a)
{
    
$query mysql_query("SELECT * FROM `car` WHERE id = '".$a."'"); // * - он выведет все поля. или так id,name,type,color,cena
    // В базе он начинает перебирать все значения 1,2,3,5,6,8,14,..... где эти числа равны 'a'; 
    
if(mysql_num_rows($query) > 0// Если кол=во строк больше нуля, то
     
{
     
$car mysql_fetch_assoc($query); 
// В массив car пишутся все строки, где id = a . пример:
// $car = array(id => 3, name => "Хонда", type => "кабриалет", color => "черный", cena => "15200$");
       
echo "Машина: ".$car['name']." Тип: ".$car['type']." Цвет: ".$car["color"]." Цена:  ".$car["cena"];
     }
     else echo 
"Такой машины нет";
}
?>

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

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