2015-05-08 2 views
2

Я установил новый флажок на существующей форме на этом веб-сайте, над которым я работаю, и я хочу, чтобы он обновлял базу данных с помощью 0 или 1 на основании того, установлен ли флажок check или нет. Я уже в течение нескольких часов безрезультатно.Вставка значения флажка 0 или 1 в базу данных PHP

Вот мой код ввода:

<input type="hidden" name="propHosp" value="0"> 
<input type="checkbox" name="propHosp" <? if($propHosp == "1") echo "checked='checked'"; ?> value="1"> 

Вот код, я поместил вокруг кода запроса SQL Вставка:

$hospValue = (isset($_GET['propHosp'])) ? intval($_GET['propHosp']) : 0; // returns 0 or 1 
$sql = "INSERT INTO comments SET "; 
$sql.= "propHosp = $hospValue"; 
--other sql lines omitted-- 

propHosp является столбец и его значение по умолчанию равно 0. Это должно быть a 1, если флажок установлен. Он просто продолжает создавать новую строку с 0 каждый раз. Я тоже пытался изменить $ _GET на $ _POST, не повезло. Спасибо за вашу помощь!

+1

как ваш скрытый вход и флажок иметь один и тот же имя атрибута; * почему? * –

+0

Я сделал это, потому что я ссылался на эту статью здесь - http://stackoverflow.com/questions/22373180/insert-0-or-1-into-mysql-based-on-checkbox-value – Michael

+0

oh , Я вижу. попробуйте проверить наличие ошибок на стороне PHP и MySQL. Кроме того, тип вашей колонки также может играть. –

ответ

0
if(isset($_POST['propHosp'])) 
      { 
       $hospValue = 1; 
      } 
      else 
      { 
       $hospValue = 0; 
      } 

только один вход, а также, <input type="checkbox" name="propHosp">

+0

другой счастливый конец, то –

+0

Так было все из-за дублированного имени, да? –

Смежные вопросы