Проблема сохдания кнокпи уадления элеманта из строки, т.е. его кол-во равно 0.

Гриша К.

Новичок
Проблема сохдания кнокпи уадления элеманта из строки, т.е. его кол-во равно 0.

Здравствуйте. Помогите пожалуйста разобраться.
В приведенном ниже кеде суть такая:
1. После того, как $id получает значение, например: "арбуз", и второе значение "слива",
то каждый элемент ($id) отображается в виде строки, при помощи foreach ($cart as $id => $qty) {...}, в количестве 1 штуки,
и в этой же строки отображается кнопка "сохранить изменения".
Например:

<P>арбуз <input type="text" name="арбуз" value="1">
<br><input type="hidden" name="save" value="true">
<input type="image" src="save-changes.gif" border="0"></p>

<p>слива 1 <input type="text" name="слива" value="1">
<br><input type="hidden" name="save" value="true">
<input type="image" src="save-changes.gif" border="0"></p>

2. При нажатии на кнопку "Сохранить изменения", происходит передача имени текстового поля из формы методоv post, совпадающего с $id (например $id='арбуз'),
приведенный код после формы, проверяет, изменения в количесвте значений во всей форме,
например если есть поля с нулевым значением, (например name="арбуз" value="0"), то это поле удаляется,
если это поле с другим значением, то value= соответсвующему значению.

== А мне надо сделать так, чтобы например при нажатии на эту кнопку, просто удалялся элемент той строки, где находится эта кнопка!
Я попробовал заменить кнопку сохранить изменения, на ссылку, которая передает значение $id = 0 методом get,
но я так и не смог сделать так, чтобы удалялся только элемент соответсвующей строки (а не все элементы формы).
<a href=\"/cart.php?$id=0\"><img src=\"/delite.gif\" alt=\"Удалить\" border=\"0\"></a>

Помогите пожалусйта сделать такую кнопку!


PHP:
<?php
<form action="cart.php" method="post">

  global $HTTP_SESSION_VARS;

  foreach ($cart as $id => $qty)
  {
<p align=\"center\" class=\"cart-text\" id=\"cart-text\"><input type=\"text\" name=\"$id\" value=\"$qty\" maxlength=\"2\" size=\"2\"></p>";
  
  <input type = hidden name = save value = true>  
  <input type = image src = "images/save-changes.gif" border = 0 alt = "Save Changes">

 } 

</form>

//Обработка кнопки сохранить изменения (name="save")
 if(isset($HTTP_POST_VARS['save']))
  {   
    foreach ($HTTP_SESSION_VARS['cart'] as $id => $qty)
    {
      if($HTTP_POST_VARS[$id]=='0')
        unset($HTTP_SESSION_VARS['cart'][$id]);
      else 
        $HTTP_SESSION_VARS['cart'][$id] = $HTTP_POST_VARS[$id];
    }
    $HTTP_SESSION_VARS['total_price'] = calculate_price($HTTP_SESSION_VARS['cart']);
    $HTTP_SESSION_VARS['items'] = calculate_items($HTTP_SESSION_VARS['cart']);
  }

?>
-~{}~ 17.06.05 22:42:

Или скажите, как удалить элемент например из электронной корзины.
 

Фанат

oncle terrible
Команда форума
ужасно.
"помогите сделать кнопку". Как будто удаляет КНОПКА, а не скрипт.
"как удалить элемент из корзины". Как будто корзина - это не неизвестная никому программа, а нечто всем известное.

когда человек настолько не понимает, что он делает - руки опускаются объяснять
 

Гриша К.

Новичок
Я не программмист, но приходится заниматься программированием самому, поэтому вопросы некорректные, спасибо что отвечаете.
Если вы меня поняли, помогите пожалуйста, сделать скрипт для удаления элементов из строки, например:
<P>арбуз
<input type="text" name="$id" value="$qty">
</p>

$id например равна арбуз, а $qty равна 1.
 

Фанат

oncle terrible
Команда форума
перед тем, как писать скрипты удаления, тебе сначала надо научиться писать простые скрипты.
как передать информацию, как добавить элемент в массив, как убрать из массива.
 

Гриша К.

Новичок
У меня есть корзина для покупок, все работает, я немогу только разобраться с тем, как удалить элемент, у меня голова кипит, вот пришел к вам на формум за помощью, у меня знаний не много, да и мне щас php полностью изучать времени нет.
Помогите пожалуйста в написании скрипта, удаления элементов, например:
<P>арбуз<input type="text" name="$id" value="$qty"></p>
$id например равна арбуз, а $qty равна 1.
Как сделать так, чтобы при нажатии на запускающую кнопку, $qty стала равной 0 или при помощи get запроса, это обработать и удалить эелимент.
 

baev

‹°°¬•
Команда форума
Гриша К.

Строку в форму вернуть легко, только вот -- нет гарантии, что код будет работать как надо.

Блин, представьте, что у Вас в машине датчик топлива почти на нуле, а Вы, вместо того чтобы на заправку заехать, просите знакомого электрика: «Хочу, чтоб эта стрелочка показывала на "полный бак"».

Если убрать строки:
PHP:
if($HTTP_POST_VARS[$id]=='0')
        unset($HTTP_SESSION_VARS['cart'][$id]);
      else
-- то строка в форме останется.

А вот будет ли правильно считаться сумма заказа и количество заказанного?..
 

Гриша К.

Новичок
Спасибо за ответ baev.
Я нашел очень простое и более гибкое решение:
я заменил кнопку удаления:
PHP:
 <input type = hidden name = save value = true>   
  <input type = image src = "images/save-changes.gif" border = 0 alt = "Save Changes">
на поле checkbox:
PHP:
echo "<p><input type=\"checkbox\" name=\"$idemt\" value=\"0\"></p>";
Вот так получилось:
PHP:
foreach ($cart as $id => $qty) 
  { 
echo "<p><input type=\"text\" name=\"$id\" value=\"$qty\" maxlength=\"2\" size=\"2\">
<input type=\"checkbox\" name=\"$idemt\" value=\"0\"></p>";}";
Пользователь проставляет галочки в нужных полях, и нажимает на кнопку "Сохранить изменения", выбранные строчки удаляются,
также можно сделать так, чтобы удалялась вся корзина при помощи этого метода.
Но всеравно хотелось бы знать, как сделать кнопку или ссылку удаления строки.
 
Сверху