13 сентября 2013
4919
добавление полей, удаление полей, PHP

Добавление и удаление полей

PHP
Демонстрация » Скачать »

В этом уроке я хочу поделиться с Вами про один отличный метод на языке PHP, который может добавлять и удалять поля на сайте. Наверно, Вы не раз сталкивались с такой ситуацией, когда на сайте требуется добавить сразу несколько полей. К примеру, возьмем фотогалерею, когда требуется добавить сразу n-ое количество изображений на сервер при этом используя свободу выбора при загрузке количества изображений. Как раз в данном случае, наш скрипт будет полностью этому соответствовать.

 

Чтобы мы могли подробно ознакомиться с данным скриптом, предоставляю Вашему вниманию небольшой видео урок. В нем Вы по шагам сможете изучить данный скрипт и уже спокойно реализовать его у себя на сайте.

 

 

 

Если же все-таки, Вам что то не понятно стало или хочется просто текстовую версию, то она полноценно с кодом приведена ниже. Также имеется демонстрация самого скрипта и исходники.

 

Первый шаг. PHP. Конструкция добавления и удаления.

 

Данный скрипт реализован посредством конструкции switch case, которая позволяет успешно реализовывать функцию добавления прибавляя +1, а также при удалении -1. В комментария я подробно все расписал.

<?
switch ($action)
/*Начало конструкции.*/
{
case 'add':
$field++;
break;
/*Добавление полей.*/

case 'del':
$field--;
break;
/*Удалений полей.*/

default:
$field = 1;
/*При загрузки страницы,
выводим первое поле.*/
}
if ($field < 1) $field = 1;
/*Не даем удалить "поле по умолчанию".*/
?>

 

 

Второй шаг. HTML и PHP.

 

Процесс добавления происходит тогда, когда человек кликает по ссылке и соответственно, вместо переменной $field, подставляется 1, такой же процесс происходит и при удалении. Суть тут в том, что в ссылках имеется GET запрос по обращению к полям add - добавление или del - удаление.

 

<table>
<tr>
<td><a href="index.php?action=add&field=<?=$field; ?>">
Добавить поле</a> /</td>
<td><a href="index.php?action=del&field=<?=$field; ?>">
Удалить поле</a></td>
</tr>
<tr>
<td colspan="2">
<?
for ($i = 0; $field > $i; $i++)
/*
Начинаем цикл от нуля до повышения
добавления поля на единицу, аналогично
и для удаления поля.
*/
{
if($i==0)
{
/*
Если переменная $i равна нулю, то
мы выводим поле по умолчанию, если
нет но в правильном нумерованном
порядке.
*/
echo"<br>Поле по умолчанию<br><input name='field $i' type='text'/>
<br>";
}
else
{
echo '<br>'."$i".'<input name="field' . "$i" . '" type="text"/>
<br>';
/*
Выводим все поля, начиная с 1-го.
*/
}
}
?>
</td>
</tr>
</table>

 

Как видим, все очень просто получилось! Буду очень рад, если чем то помог, действительно, полезным!