[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Вывод массива
TMake
Всем привет.
Помогите я впоймал клина не могу разобраться в самом простом
есть массив который нужно вывести в другой форме как это сделать, у меня выдает лиш только последний элемент массива.

for($i=1; $i<=$_POST['kol']; $i++):
echo '<input type=text name=golos[$i] size=20> ';
endfor;

foreach($_POST['golos'] as $item){
echo $item;
endforeach;



Спустя 44 минуты, 40 секунд (2.03.2009 - 12:52) Adil написал(а):
PHP
$i<=count($_POST['kol'])


Если честно я вообще не понял, что ты хочешь сделать. $_POST['kol'] это массив? И напиши подробнее что ты пытаешься сделать

Спустя 18 минут, 21 секунда (2.03.2009 - 13:11) vasa_c написал(а):
Напишите нормальный код.
foreach { endforeach; явно нерабочий.

И html-атрибуты заключайте в кавычки

Спустя 6 минут, 18 секунд (2.03.2009 - 13:17) stepan написал(а):
массив не $_POST['kol'], вот этот массив$_POST['golos']

//сдесь создается массив
for($i=1; $i<=10; $i++):
golos[$i]=$i;
endfor;

//сдесь он должен все по очериди вывести, но выводить только последний элемент в данном случаи $item=golos[10]
foreach($_POST['golos'] as $item){
echo $item;
}

Вопрос как заставить чтобы все элементы вывести

Спустя 10 минут, 14 секунд (2.03.2009 - 13:27) twin написал(а):
А зачем так хитрО создавать массив? Руками лень написать? Ну в крайнем случае есть специальная функция для этого: range() А чтобы $_POST['golos'] разобрать, надо как минимум, чтоб эта тоже был массив. Как он создается?

Спустя 9 минут, 18 секунд (2.03.2009 - 13:37) stepan написал(а):
Нет слов
оставте вы впокое этот масив, я знаю что можно его создовать проще у меня другой вопрос как его вывести т.е. все элементы массива а не последний
foreach($_POST['golos'] as $item){
echo $item;
}

Спустя 10 минут, 43 секунды (2.03.2009 - 13:47) twin написал(а):
Ну нет слов, тогда шли флюиды. Мож найдется пара телепатов smile.gif . Если $_POST['golos'] массив, то так и вывести, все правильно. Создается он как, вот в чем вопрос. Должно быть как то так:
HTML
<input ..... name="golos[]"...../>
Так оно или нет?

Спустя 6 минут, 35 секунд (2.03.2009 - 13:54) stepan написал(а):
twin забуть про <input ..... name="golos[]"...../>
объясни почему не выводить все элеменнты а выводить последний элемент
PHP
foreach($_POST['golos'] as $item){
echo 
$item;
}

Спустя 2 минуты, 12 секунд (2.03.2009 - 13:56) twin написал(а):
Блин. Да потому что сделай так:
PHP
<?
print_r($_POST['golos']);
и посмотри что там. Или сюда скопируй.

Спустя 8 минут, 13 секунд (2.03.2009 - 14:04) stepan написал(а):
выдает вот это:
Array ( [$i] => 10 )

Спустя 16 минут, 38 секунд (2.03.2009 - 14:21) sergeiss написал(а):
stepan, расслабься, сделай 10 неторопливых вдохов...

twin пытается тебе помочь, а ты ему "забудь!!!".

Судя же по твоей информации, у тебя там только один элемент и передается, в этом массиве. Правда, я не понял, откуда там индекс $i...

Покажи более полный код, иначе "телепатов нету" (с)

Спустя 6 минут, 28 секунд (2.03.2009 - 14:27) twin написал(а):
Все наверняка прозаично. Инпуты генерятся в цикле, а в синтаксисе ошибка. Скорее всего все это заключено в апострофы, а не двойные кавычки и $i интерпретируется как строка, а не как переменная.
Так точно телепатом станешь smile.gif

Спустя 9 минут, 5 секунд (2.03.2009 - 14:37) stepan написал(а):
PHP
<?
if(!isset(
$_POST['flag'])):
$_POST['flag']='1';
endif;
if(
$_POST['flag']=='2' && $_POST['name_head']=='' && $_POST['kol_voprosov']=='' && $_POST['kol_otvetov']==''){
$_POST['flag']='1';
}
if(
$_POST['flag']=='1'){
?>

<center>
<h3>Шаг №1</h3>
<form action='cms_voting.php' method=POST>
<table border=0>
<tr><td>
Введите названия:
</td><td>
<input type=text size=20 name='name_head'>
</td><td rowspan=3 valign='top'>
<div class='lin'><center>Пример:
<br>
Название:<br>
</center><br>
</div>
</td></tr>
<tr><td>
Количество вопросов:
</td><td>
<input type='text' size=2 name='kol_voprosov'>
</td></tr>
<tr><td>
Количество вариантов ответа:
</td><td>
<input type='text' size=2 name='kol_otvetov'>
</td></tr>
</table>
<input type='hidden' name='flag' value='2'>
<input type='submit' value=' Ok '>
</form>
</center>

<?
}
if(
$_POST['flag']=='2'){
?>
<form action='cms_voting.php' method=POST>
<center>
<h3>Шаг №2</h3>
<table border=0>
<tr><td>
<?
echo 'Название вопроса:</td><td><b>'.$_POST['name_head'].'</b></td></tr>';
for(
$i=1$i<=$_POST['kol_voprosov']; $i++):
echo 
'<tr><td>Вопрос №'.$i.'</td><td> <input type=text name=golos[$i] size=20> </td></tr>';
endfor;
for(
$i=1$i<=$_POST['kol_otvetov']; $i++):
echo 
'<tr><td>Подпись к ответу №'.$i.'</td><td> <input type=text name=otvet[$i] size=20></td></tr>';

endfor
?>
</table>
<input type='hidden' name='name_head' value=<?echo $_POST['name_head']?>>
<input type='hidden' name='kol_voprosov' value=<?echo $_POST['kol_voprosov']?>>
<input type='hidden' name='kol_otvetov' value=<?echo $_POST['kol_otvetov']?>>
<input type='hidden' name='flag' value='3'>
<input type='submit' value=' Ok '>
</center>
</form>
<?
}
if(
$_POST['flag']=='3'){
?>
<form action=cms_voting.php method=POST>
<center>
Пример:<br>
<div class='lin'>
<b><?echo $_POST['name_head']?></b><br>
<table border=1>
<?
print_r
($_POST['golos']);
for(
$j=1$j<=$_POST['kol_otvetov']; $j++):
echo 
' <input type=radio name=gl value=$j>';
endfor;
echo 
'</td></tr>';

?>
</td><tr>
</table>
</div>
<input type='hidden' name='name_head' value=<?echo $_POST['name_head']?>>
<input type='hidden' name='kol_voprosov' value=<?echo $_POST['kol_voprosov']?>>
<input type='hidden' name='kol_otvetov' value=<?echo $_POST['kol_otvetov']?>>
<?
for($i=1$i<=$_POST['kol_voprosov']; $i++):
echo 
'<input type=hidden name=golos[$i] value='.$_POST['golos[$i]'].'>';
endfor;
for(
$i=1$i<=$_POST['kol_otvetov']; $i++):
echo 
'<input type=hidden name=otvet[$i] value='.$_POST['otvet[$i]'].'>';
endfor;
?>
<input type='submit' value=' Ok '>
</center>
</form>
<?
}

Спустя 7 минут, 44 секунды (2.03.2009 - 14:44) twin написал(а):
Ну вот, а я что говорил smile.gif Ура, я на пол пути к ясновидению!!!
PHP
<?
echo 
"<tr><td>Вопрос №".$i."</td><td> <input type=text name=golos[".$i."] size=20> </td></tr>\r\n";
Вот так пиши, тогда виднее все будет.

Спустя 9 минут, 12 секунд (2.03.2009 - 14:53) stepan написал(а):
unsure.gif Всеравно последние значение выдает unsure.gif
что мне делать?

Спустя 16 минут, 4 секунды (2.03.2009 - 15:10) twin написал(а):
А это как?
PHP
<?
$_POST['golos[$i]']
Может это имелось ввиду:
PHP
<?
$_POST['golos'][$i]
?

Спустя 5 минут, 3 секунды (2.03.2009 - 15:15) twin написал(а):
Вот тут пробела нет:
PHP
<?
<
input type='hidden' name='name_head' value=<?echo $_POST['name_head']<
Надо так:
PHP
<?
<
input type='hidden' name='name_head' value=<? echo $_POST['name_head']<
А лучше так:
PHP
<?
<
input type='hidden' name='name_head' value=<?php echo $_POST['name_head']<
А еще лучше так:
PHP
<?
<
input type='hidden' name='name_head' value='<?php echo $_POST['name_head']?>'>
Ну а вот так совсем хорошо:
PHP
<?
<
input type='hidden' name='name_head' value='<?php echo htmlspecialchars($_POST['name_head'])?>'>

Спустя 22 минуты, 7 секунд (2.03.2009 - 15:37) stepan написал(а):
twin всеравно не выходит сможеш написать самый простой пример создание массива и вывод его через метод POST?

Спустя 55 минут, 42 секунды (2.03.2009 - 16:32) twin написал(а):
Вот:
PHP
<form id="frm" action="" method="post"> 
<?
$golos = isset($_POST['golos'])?$_POST['golos']:array();
foreach(
$golos as $val)
echo "<b>", $val, "</b><br>";
for(
$i=0; $i < 10; $i++)
echo $i, " <input name=\"golos[".$i."]\" type=\"checkbox\" value=\"".$i."\" /><br>";
?>
<input name="" type="submit" />
</form>

У тебя не столько в этом проблема, сколько в общем бардаке. Ты какие то не те книжки читаешь.

Спустя 8 минут, 28 секунд (2.03.2009 - 16:41) sergeiss написал(а):
twin вместо этого
PHP
echo $i" <input name=\"golos[".$i."]\" type=\"checkbox\" value=\"".$i."\" /><br>";

надо
PHP
echo $i" <input name=\"golos[]\" type=\"checkbox\" value=\"".$i."\" /><br>";

Вроде как так.

Спустя 6 минут, 15 секунд (2.03.2009 - 16:47) twin написал(а):
Я для наглядности. Вообще можно и наоборот:
PHP
<?
echo 
$i" <input name=\"golos[".$i."]\" type=\"checkbox\" /><br>";
и ловить ключи.

Спустя 25 минут, 50 секунд (2.03.2009 - 17:13) stepan написал(а):
twin, sergeiss biggrin.gif laugh.gif biggrin.gif laugh.gif Ура заработало biggrin.gif laugh.gif biggrin.gif laugh.gif
Спосибо что дурака такова научили.
На счет книжек скачал я парочку но обе были явно отсканированы с одной и коряво распознаны.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.