Jump to content
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

Проверка chickbox на нажатие (Расширение модуля досивки)


 Share

Recommended Posts

Уважаемые знатоки !

Вчера курил гдень и ночь валидацию чекпотому чтокса .. и пыился засунуть это все в движок (ocstore 0.1.7)

В обещём задача:

Есть несколько типов досивки (им радиокнопки стоят):

Хочу добавить под кажый пункт с рабиокнопкой поле с чекпотому чтоксом (Типа улуга - курьер приегдет сам за гденьгами к клиенту)

Да вот ..

В шаблоне втыкаю чекпотому чтоксы после радиокнопок

<?php if (!$shipping_method['error']) { ?>
          <?php foreach ($shipping_method['quote'] as $quote) { ?>
          <tr>
            <td width="1"><label for="<?php echo $quote['id']; ?>">
                <?php if ($quote['id'] == $shipping) { ?>
                <input type="radio" name="shipping_method" value="<?php echo $quote['id']; ?>" id="<?php echo $quote['id']; ?>" checked="checked" style="margin: 0px;" />
                <?php } else { ?>
                <input type="radio" name="shipping_method" value="<?php echo $quote['id']; ?>" id="<?php echo $quote['id']; ?>" style="margin: 0px;" />
                <?php } ?>
              </label></td>
            <td width="534"><label for="<?php echo $quote['id']; ?>" style="cursor: pointer;"><?php echo $quote['title']; ?></label></td>
            <td width="1" align="right"><label for="<?php echo $quote['id']; ?>" style="cursor: pointer;"><?php echo $quote['text']; ?></label></td>
          </tr>

          <tr>
            <td width="1">
                <input type="checkbox" name="checkme" /> 
</td>
            <td width="534"><?php echo $quote['title_nal']; ?></td>
            <td width="1" align="right"><?php echo $quote['text_n']; ?></td>
          </tr>

Получается чтото врогде этого:

http://floomby.ru/content/o3EVLXGZUe/

Затем правлю скрипт досивки:

В обещём небуду сильно углубляться .. но все всило на моменте проверки чекпотому чтокса (нажат \ ненажат)

Если нажат: прибавить сумму к тоилу

Если нет: осивить прежней

Валидация:

function checkbox_verify($_name)
{
$result=0;
if (isset($_REQUEST[$_name]))
{ if ($_REQUEST[$_name]=='on') { $result=1; } else { $result=0; }
}
return $result;
}

Эту фонкцию прописал в тотже файлик, ггде и расчет досивки игдет - и имже она и вызывается

Вся трабла в том, что всегда значение возвращается 0 (как бы я ни крутил эту функцию, и откуда бы ни вызывал ее)

даже если изначально посивили checkbox="checked"

Нижайше прошу хэлпа )

Link to comment
Share on other sites


  • 4 weeks later...

Вопрос по сей гдень открыт ..

Некоторое время не занимался этот штукой .. передышку сгделал )

Сейчас опять со свежими силами взялся лопатить . Но пока не понимаю куда надо копать =( Задайте мне какой нить вектор, пожалуйси )

Link to comment
Share on other sites


данные со синицы выпотому чтора досивки не попадают напрямую в модуль досивки, сначала они отсылаются на контроллер checkout/guest_step_1 (для гостевого заказа) или checkout/shipping (для зарегистрированных) а вот им уже можно вашу переменную пролиить, только непонятно зачем гделать для проверки отгдельную функцию, тут одним if'ом опотому чтойтись можно)

чтобы полулить данные в модуле досивки используйте сессии

Link to comment
Share on other sites


Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share


×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.