Checkboxy – edycja i zapisywanie w mysql

W dzisiejszym wpisie jedna z najbardziej podstawowych operacji. Prawdopodobnie trafiłeś tutaj, ponieważ nie jesteś pewien jak zrobić zapisywanie i edycję pól typu checkbox tak, żeby było z tym najmniej problemów. Pierwsza sprawa: wartość pola checkbox może przyjmować dowolną postać, ale dla uproszczenia przyjmiemy, że będzie to 1 (value=”1″). W końcu dość dobrze opisuje to fakt zaznaczenia pola, a dodatkowo pozwala w prosty sposób wykonać operacje zapisu i edycji. Po wysłaniu formularza w $_POST (przy method=”post”) znajdą się dane wpisane w formularzu oraz ewentualne pola checkbox. Ewentualne, ponieważ przeglądarki pomijają te pola jeśli nie zostały one zaznaczone. Dzięki wybranej wcześniej jedynce możemy wykonać polecenie:

$_POST['nazwa_checkboxa'] += 0;

Dzięki temu rozwiązaniu zawsze będziemy wiedzieli, które pola zostały wybrane, oraz nie będzie potrzebne zbytnie rozbudowywanie zapytania aktualizującego dane w bazie.
Pozostało już tylko edytowanie w formularzu:
wersja php

echo '<input type="checkbox" name="nazwa_checkboxa" value="1"' ; 
if ($form['nazwa_checkboxa'] == 1) echo 'checked="checked"' ; 
echo '/>' ;

wersja smarty

<input type="checkbox" name="nazwa_checkboxa" value="1" 
{if $form.nazwa_checkboxa eq 1}checked="checked"{/if} />

3 Comments on “Checkboxy – edycja i zapisywanie w mysql

  1. a co sądzisz o takim sposobie
    dla smarty oczywiscie dla większej ilości w tablicy:

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*