Перейти к содержимому

Сервис обмена электронных валют

Партнерская программа Kredov

Создать массив и поместить его в сессию

#1 surfer

surfer
  • Заблокированные
  • 1 956 сообщений
  • Репутация: 71
0

Отправлено 26 Август 2009 - 13:16

через форму с помощью checkbox передается неопределенное значение параметров, как выбрать из БД нужные столбцы по количеству переданных значений checkbox и id разным значениям checkbox и выбранные значения массивом поместить в сессию?

данные выбираются
$_SESSION['id_service'] = $_POST['service'];
for ($i=0; $i<count($_SESSION['id_service']); $i++)
{
$service = "SELECT * FROM service WHERE id=".$_SESSION['id_service'][$i];
$service_query = mysql_query("$service");
while ($service_select = mysql_fetch_assoc($service_query))
{
echo $service_select['service'];
echo $service_select['price'];
}
}


а вот как $service_select['service'] и $service_select['price'];
поместить в соответствующие массивы $_SESSION['service'] и $_SESSION['price'], чтоб их потом можно было разобрать по элементам, не получается
помещает только последнюю выбранную запись и все :rolleyes:

 

 

  • 0

#2 ZiTosS

ZiTosS
  • Пользователь
  • 5 148 сообщений
  • Репутация: 8

Отправлено 29 Август 2009 - 23:11

sc2r2bey, ппц. Учимся использовать склеивание в строку и деление строки. implode и explode

<form action="POST">
<input type="checkbox" name="price[]" value="1"> id - 1
<input type="checkbox" name="price[]" value="2"> id - 2
............................................................
<input type="checkbox" name="price[]" value="n"> id - n
</form>


$ids = implode($_POST['price']);
$sql = "SELECT * FROM service WHERE id IN ({$ids})";
$resource = mysql_query($sql);
while ($service_select = mysql_fetch_assoc($resource))
{
echo $service_select['service'];
echo $service_select['price'];
}

  • 0

#3 surfer

surfer
    Topic Starter
  • Заблокированные
  • 1 956 сообщений
  • Репутация: 71

Отправлено 30 Август 2009 - 18:15

спасибо разобрался, даже больше, а как сделать массив из всех id одной таблицы?
  • 0

#4 ZiTosS

ZiTosS
  • Пользователь
  • 5 148 сообщений
  • Репутация: 8

Отправлено 30 Август 2009 - 18:31

sc2r2bey,

а как сделать массив из всех id одной таблицы?

Ну вот так просто не получится... Тут уже обычный цикл...
$ids = array();
$sql = "SELECT id FROM table";
$resource = mysql_query($sql);
if(!mysql_num_rows($resource))
while($array = mysql_fetch_assoc($resource))
$ids[] = $array['id'];

echo print_r($ids);

  • 0


Оформление форума – IPBSkins.ru