Я успешно проверил, записаны ли данные и нет. Проблема в том, что я не могу показать кнопку или ввод, если данные были успешно проверены.
В настоящий момент у меня возникает проблема, даже если данные правильные или неправильные, кнопка отображает.
Мне нужно, чтобы он отображался только для правильных данных.
Вот мой вид
<input type="hidden" value="1" name="studId" />
<div class="form-group">
<h5>Class Code:</h5>
<small><li>Only teachers shall give you code</li></small><br>
<input type="text" id="code" class="form-control col-md-6" placeholder="Enter class code to join" name="code" required />
<span id="code_result"></span>
</div>
<hr>
<button id="btnVerify" class="btn btn-success">Verify</button>
<button type="submit" id="btnSubmit" class="btn btn-info btn-md">Join Class</button>
И его скрипт
<script>
$(function(){
$('#btnSubmit').hide();
//Verify
$('#btnVerify').click(function(){
var code = $('#code').val();
if(code != '')
{
$.ajax({
url:"<?php echo base_url(); ?>students/check_code_avalibility",
method:"POST",
data:{code:code},
success:function(data){
$('#code_result').html(data);
if(code === true){
$('#btnSubmit').hide();
}else{
$('#btnSubmit').show();
}
}
});
}
});
});
</script>
В контроллере
function check_code_avalibility()
{
if(!$this->student_model->is_code_available($_POST["code"]))
{
echo '<label class="text-danger"><span class="glyphicon glyphicon-remove"></span> Invalid Code</label>';
}
else
{
echo '<label class="text-success"><span class="glyphicon glyphicon-ok"></span> Code Available</label>';
}
}
А в модели
function is_code_available($code)
{
$this->db->where('code', $code);
$query = $this->db->get("groups");
if($query->num_rows() > 0)
{
return true;
}
else
{
return false;
}
}