「はい」を選択すると正常に動作する次のコントローラーがありますが、「いいえ」を選択すると問題が発生します。
データベースに「いいえ」を挿入するにはどうすればよいですか? **
** NO! と言わせるために、elseif を追加しました。
コントローラ:
public function add()
{
$this->form_validation->set_rules('add_fields_name', 'Name', 'trim|required|xss_clean');
$this->form_validation->set_rules('add_fields_value', 'Value', 'trim|xss_clean');
$this->form_validation->set_rules('add_fields_class', 'Class', 'trim|xss_clean');
$this->form_validation->set_rules('add_fields_placeholder', 'Placeholder', 'trim|required|xss_clean|callback_dropdown_check');
$this->form_validation->set_rules('add_fields_type', 'Type', 'trim|required|xss_clean|callback_dropdown_check');
if($this->form_validation->run() == FALSE)
{
$data['validation_errors'] = validation_errors('<div class="alert alert-error">', '</div>');
$data['contentMangement'] = $this->options_model->systemOptions();
$data['pageTitle'] = 'Add Fields';
$this->load->view('_assets/dashHeader', $data);
$this->load->view('dashboard/add_fields', $data);
$this->load->view('_assets/footer');
}else{
$fieldName = $this->input->post('add_fields_name', TRUE);
$fieldClass = $this->input->post('add_fields_class', TRUE);
$fieldValue = $this->input->post('add_fields_defaultValue', TRUE);
//Dropdown Placeholder
$dropdown = $this->input->post('add_fields_placeholder', TRUE);
if($dropdown =='yes')
{
$dropdown_value = $this->input->post('add_fields_placeholderValue', TRUE);
}
else($dropdown == 'no')
{
}
//Removes Caps & spaces
$fieldNameStripped = strtolower(str_replace(" ", "", $fieldName));
$fieldValueStripped = strtolower(str_replace(" ", "", $fieldValue));
$fieldClassStripped = strtolower(str_replace(" ", "", $fieldClass));
//Default Form Details
$fieldLabel = '<label for="'. $fieldNameStripped . '">'. $fieldName. '</label>'."\n";
$formData = array(
'name' => ''.$fieldNameStripped.'',
'id' => ''.$fieldNameStripped.'',
'value' => ''.$fieldValueStripped.'',
'class' =>''.$fieldClassStripped.'',
'placeholder' => ''.$dropdown_value.''
);
if (isset($_REQUEST['add_fields_type']))
{
if($_REQUEST['add_fields_type'] == 'input')
{
$fieldField = form_input($formData, TRUE);
}
if($_REQUEST['add_fields_type'] == 'textarea')
{
$fieldField = form_textarea($formData, TRUE);
}
if($_REQUEST['add_fields_type'] == 'radiobutton')
{
$fieldField = form_radio($formData, TRUE);
}
if($_REQUEST['add_fields_type'] == 'checkbox')
{
$fieldField = form_checkbox($formData, TRUE);
}
$fieldTypeInsert = array(
'name' => ''.$fieldName.'',
'class' => ''.$fieldClass.'',
'value' => ''.$fieldValue.'',
'placeholder' => ''.$dropdown.'',
'placeholder_value' => ''.$dropdown_value.'',
'type' => ''.$_REQUEST['add_fields_type'].'',
'label' => ''.$fieldLabel.'',
'field' => ''.$fieldField.''
);
$this->field_model->insertField($fieldTypeInsert);
$data['validation_errors'] = '<div class="alert alert-success"><strong>Thank You</strong> Your Field Has Been Added</div>';
$data['contentMangement'] = $this->options_model->systemOptions();
$data['pageTitle'] = 'Add Fields';
$data['fieldType'] = $this->input->get('add_fields_type');
$data['placeholderType'] = $this->input->get('add_fields_placeholder');
$this->load->view('_assets/dashHeader', $data);
$this->load->view('dashboard/add_fields', $data);
$this->load->view('_assets/footer');
}
}
}
意見:
<label for="add_fields_placeholder">Placeholder: </label>
<select name="add_fields_placeholder" id="add_fields_placeholder">
<option value="">Please Select</option>
<option value="yes" <?php echo set_select('add_fields_placeholder','yes', ( !empty($placeholderType) && $placeholderType == "yes" ? TRUE : FALSE ));?>>Yes</option>
<option value="no" <?php echo set_select('add_fields_placeholder','no', ( !empty($placeholderType) && $placeholderType == "no" ? TRUE : FALSE ));?>>No</option>
</select>