PDA

Показать полную графическую версию : Вывод данных их массива


venuko
06-04-2010, 19:24
Ребят, не подскажете, как вывести на экран результат передачи данных из формы при выделенных в списке нескольких пунктов?

<select name=\"recomend[]\" multiple=\"multiple\" size=\"5\">
<option value=\"1\">Чебурашка</option>
<option value=\"2\">Крокодил Гена</option>
<option value=\"3\">Шапокляк</option>
<option value=\"4\">Крыса Лариса</option>
<option value=\"5\">Робот</option>
<option value=\"6\">Солдат</option>
</select>

Coutty
06-04-2010, 19:31
На каком языке программируете?

Вариант для php:

<?php
print_r($_POST['recomend']);
?>

Второй вариант для него же:

<?php
reset($_POST['recomend']);
while ($temp = each ($_POST['recomend'])) {
echo $temp . "<br />";
}
?>

Ну и, собственно, прямое обращение к данным:

<?php
echo $_POST['recomend'][0];
echo $_POST['recomend'][1];
...
?>

venuko
06-04-2010, 19:34
На каком языке программируете? »

На php. Смысл какой, добавляется запись в БД, а в форме можно сразу выделить ряд параметров и записать их в БД в одно поле в таком виде 1|3|5 к примеру

записать я сам смогу в БД, нужно в конечную переменную данные а этом виде 1|3|7 передать из этой мульти формы

Coutty
06-04-2010, 19:39
Сборкой данных надо заниматься отдельно:

<?php
reset($_POST['recomend']);
$str = '';
while ($temp = each ($_POST['recomend'])) {
$str .= $temp . "|";
}
?>
В итоге будет строка вида 1|3|5|
Если последняя палка мешает - удаляйте. Я не помню функцию. Лениво снова лезть в мануал.

venuko
06-04-2010, 20:16
В итоге будет строка вида 1|3|5|
Если последняя палка мешает - удаляйте. Я не помню функцию. Лениво снова лезть в мануал. »



$recomend=$_POST['recomend'];
for ($i=0; $i<count($recomend); $i++)
echo "$recomend[$i]|";


Как вот теперь последнию "палку" вырезать?

venuko
06-04-2010, 21:34
ни кто не знает? :(

venuko
07-04-2010, 11:18
есть результат работы данного скрипта 3|5|9|


$recomend=$_POST['recomend'];
for ($i=0; $i<count($recomend); $i++) {
$recomend_vse = $recomend[$i]."|";
echo $recomend_vse;
}


Как из цикла вынести этот результат 3|5|9| в переменную, чтобы записать потом в БД?

Coutty
07-04-2010, 16:33
Всё-таки в мануал вы даже не заглянули.
К тому, что я написал в четвёртом сообщении темы, добавьте после цикла:

$str = substr($str, 0, -1);

Вот переменную $str и надо заносить куда вам угодно.

venuko
07-04-2010, 23:31
Всё-таки в мануал вы даже не заглянули.
К тому, что я написал в четвёртом сообщении темы, добавьте после цикла: »

спасибо за подсказку, но я уже тоже нашел в мануале это :) Вопрос в другом как в мой цикл вставить запрос чтобы записатьт данные в БД в одно из полей, или вынести данные из этой переменной вне цикла и потом записать данные.

Arrest
10-04-2010, 22:09
Люди! Пожалуйста, не используйте циклы, чтобы склеить элементы массива в PHP. Это грешно.

<?php
$rec = $_POST['recommend']
$rec_all = join('|', $rec);
?>

И вот $rec_all добавляете в запрос, или куда там вам надо, именно там ваше '1|3|7'.

venuko
02-05-2010, 17:19
У меня есть записи в БД, это страницы c информацией, и вот я к определенной странице прикрепил другие несколько страниц, записав в одно поле идентификаторы страниц в таком виде 1|2|5|6 , что-то вроде рекомендуемых товаров прикрепленных к определенному товару.

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

SELECT * FROM ".$prefix."_pages WHERE cid=".$cid."




© OSzone.net 2001-2012