За последние 24 часа нас посетили 17404 программиста и 1682 робота. Сейчас ищут 956 программистов ...

Записать значение флажка в таблицу БД MySQL

Тема в разделе "PHP и базы данных", создана пользователем sevalery, 18 фев 2011.

  1. sevalery

    sevalery Активный пользователь

    С нами с:
    11 ноя 2010
    Сообщения:
    14
    Симпатии:
    0
    Есть такая проблемка! Я начинающий в php - Smarty
    Есть файл админки редактирования объектов недвижимости.
    Добавил в форму редактирования checkbox и создал в БД row с именем newprice'.
    Запись в БД сохраняется при установленной галочке, и принимает значение "1".
    При повторном открытии файла квадратик пуст и если его не отметить галочкой значение в БД примет значение 0. Открыв страницу редактирования ты не знаешь состояния БД.
    Испробовал несколько вариантов, в том числе и подсмотренных в различных формах.
    Запись в БД проводится, состояния БД при открытии формы не отображается.

    Это часть кода при невыполнении условий заполнения первоначальной формы или ошибок заполнения формы, типа "Вы не указали площадь объекта":
    PHP:
    1. <input type="text" name="price" value="'.$_POST['price'].'" size="11" class="single_input">
    таких строк формы около 30 - все работают. Далее следует передача checkbox
    PHP:
    1. <input name="newprice" type="checkbox" value="1" '.$_POST['newprice'].'>
    При таком коде запись в БД проводится, состояния БД при открытии формы не отображается..

    Эта часть кода для первоначального вывода формы:
    PHP:
    1. <input type="text" name="price" value="'.$row['price'].'" size="11" class="single_input">
    таких строк формы около 30 - все работают.
    Далее следует часть которую пытаюсь заставить отображать значение БД.
    PHP:
    1. <input name="newprice" type="checkbox" value="1"{if $newprice}checked{/if}/>
    Может дело в настройках row БД?

    P.S.
    1. Это Smarty
    2. if (isset($_POST['$nedv'])) {$nedv = $_POST['$nedv'];} проверки есть для каждой строки.
    3. 'newprice' => trim($_POST['newprice']), - для удаления пробелов есть для каждой строки формы.

    Пробовал такие строки кода:

    PHP:
    1. <input name="newprice" type="checkbox" value="1" '.$checked.'/>
    2.  
    3. <input name="newprice" type="checkbox" value="1" '.$row['newprice'].'/>
    4.  
    5. <input name="newprice" type="checkbox" value="1"{if $newprice}checked{/if}/>
    Результат тот же: запись в БД проводится, состояния БД при открытии формы не отображается.
    Может checkbox выполняет только функцию ввода записи?