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


Пользователь месяца
ShowPrint ShowPrint 1-й за Сентябрь
Очков активности: 283 2 темы, 21 сообщение, 7 баллов репутации
Сайт: ShowPrint.ru
ТОП самых активных за этот месяц
  • Фотография Medvedoc
    #1

    Medvedoc
    Очков активности: 516 9 тем, 59 сообщений, 4 балла репутации

  • Фотография ShowPrint
    #2

    ShowPrint (ShowPrint.ru)
    Очков активности: 312 Вне конкурса за определение пользователя месяца

  • Фотография Ixman
    #3

    Ixman (o5cat.ru)
    Очков активности: 216 0 тем, 24 сообщения, 6 баллов репутации

  • Фотография BLIK
    #4

    BLIK
    Очков активности: 210 Вне конкурса за определение пользователя месяца

  • Фотография WGN
    #5

    WGN (worldgamenews.com)
    Очков активности: 183 Вне конкурса за определение пользователя месяца

  • Фотография Игорь Ку
    #6

    Игорь Ку (dudesday.ru)
    Очков активности: 157.5 4 темы, 9 сообщений, 5 баллов репутации

  • Фотография Алексей111
    #7

    Алексей111 (xvideo24.ru)
    Очков активности: 66 8 тем, 20 сообщений, 1 балл репутации

  • Фотография yuran
    #8

    yuran (yurbol.ru)
    Очков активности: 40.5 1 тема, 24 сообщения, 1 балл репутации

  • Фотография Zevss
    #9

    Zevss (domles43.ru)
    Очков активности: 22.5 2 темы, 9 сообщений, 1 балл репутации

  • Фотография falka
    #10

    falka (mygoodjob.ru)
    Очков активности: 16.5 3 темы, 2 сообщения, 1 балл репутации

  • Показать весь ТОП 10

Kwork.ru - услуги фрилансеров от 500 руб.

Поддержите форум! =)
Апдейты
  • Яндекс тИЦ: 26.09.2018
  • Яндекс выдача: 22.10.2018
Топ 5 участников по репутации


Реализация добавления поля формы без перезагрузки (стр. 2)

#11 surfer

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

Отправлено 01 August 2009 - 20:41

foreach ($pole as &$value) {
echo $value;
}

$value - это количество элементов в массиве, так?
т.е. я могу теперь вместо в echo делать записи в БД
  • 0

#12 yury

yury
  • Пользователь
  • 642 сообщений
  • Репутация: 188

Отправлено 01 August 2009 - 21:25

количество элементов в массиве $pole - это count($pole)
в $value попадают значения элементов массива

foreach ($pole as $value) { //для каждого элемента массива $pole помещать его значение в переменную $value
echo $value; //выводить эту переменную в браузер
}
по-русски эта конструкция читается так: "для каждого элемента массива $pole помещать его значение в переменную $value и выводить эту переменную в браузер"

т.е. я могу теперь вместо в echo делать записи в БД

да
  • 0

#13 surfer

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

Отправлено 01 August 2009 - 21:42

я сейчас перечатал раздел про массивы в книге, отталкиваясь от общения с вами все устаканилось :)
  • 0

#14 Banderas

Banderas
  • Неактивные
  • 1168 сообщений
  • Репутация: 1

Отправлено 01 August 2009 - 22:31

Вот 3 способа как извлечь из массива данные:
1) FOR
for ($i=0; $i<count($arr); $i++) {
	echo $arr[$i]."<br />";
}
2) FOREACH
foreach ($massiv as $key => $value) {
	echo "$key => $value <br />";
}
3) WHILE
while ($element = each($massiv)) {
	echo $element['key'].':'.$element['value']."<br />";
}

После использования foreach массив нужно резетнуть reset() что бы массив оставался массивом)))
  • 0

I'm web-developer 

Magento one love!



#15 surfer

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

Отправлено 02 August 2009 - 07:55

блин Вы меня расстрогали таким отношением, спасибо!
  • 0

#16 surfer

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

Отправлено 02 August 2009 - 09:43

а если немного усложнить задачу, когда остается одно поле кнопка удалить становится неактивной?
  • 0

#17 yury

yury
  • Пользователь
  • 642 сообщений
  • Репутация: 188

Отправлено 02 August 2009 - 11:14

<html>
<head>
<title>Dynamic form</title>
<script type="text/javascript">
var nfields = 1;
function addfield() {
str = '';
nfields++;
for (i = 1; i <= nfields; i++) {
str += (i == 1 ? '' : '<br />');
tsrt = (i == nfields ? "" : document.getElementById('pole'+i).value);
str += '<input type="text" name="pole[]" id="pole'+i+'" value="'+tsrt+'" /> <input type="button" value="удалить" name="remove'+i+'" onClick="rmfield('+i+');"'+((nfields == 1) ? ' disabled' : '')+' />\n';
}
document.getElementById('poles').innerHTML = str;
}
function rmfield(pos) {
str = '';
delta = 0;
for (i = 1; i <= nfields; i++) {
if (i == pos) {
delta = 1;
}
else {
tpos = i-delta;
str += (tpos == 1 ? '' : '<br />');
tsrt = document.getElementById('pole'+i).value;
str += '<input type="text" name="pole[]" id="pole'+tpos+'" value="'+tsrt+'" /> <input type="button" value="удалить" name="remove'+tpos+'" onClick="rmfield('+tpos+');"'+((nfields == 2) ? ' disabled' : '')+' />\n';
}
}
document.getElementById('poles').innerHTML = str;
nfields--;
}
</script>
</head>
<body>
<form name="add" action="form.php" method="POST">
<input type="button" value="добавить" name="add" onClick="addfield();" />
<div id="poles"><input type="text" name="pole[]" id="pole1" value="" /> <input type="button" value="удалить" name="remove1" onClick="rmfield(1);" disabled /></div>
<input type="submit" value="сохранить" name="save" />
</form>
</body>
</html>

  • 0

#18 ZiTosS

ZiTosS
  • Неактивные
  • 5148 сообщений
  • Репутация: 8

Отправлено 05 August 2009 - 11:25

Всё сделано сложно, DOM никто не использует? Вообще можно сделать всё намного проще.
  • 0

#19 surfer

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

Отправлено 05 August 2009 - 12:15

а как тогда?


  • 0

#20 ZiTosS

ZiTosS
  • Неактивные
  • 5148 сообщений
  • Репутация: 8

Отправлено 06 August 2009 - 22:54

sc2r2bey, почитайте вот это вступление в DOM. Хоть там и не все функции приводятся, но всё понятно расписано:
JS DOM функции
А вот вообще по DOM общее
  • 0

robot

robot
  • Пользователь PRO
  • 2652 сообщений
  • Репутация: 85


Похожие темы

  Название темы Автор Статистика Последнее сообщение

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