Как запросить мою базу данных, чтобы получить результат в виде массива? - PullRequest
0 голосов
/ 22 декабря 2011

моя структура таблицы базы данных выглядит следующим образом:

wdt        date            teacherid
1       2011-01-11           1001
2       2011-01-11           1002
3       2011-01-12           1001
4       2011-01-12           1002

Теперь я хочу выбрать поле даты из таблицы, где teacherid = "1001", а затем вернуть результат в виде массива, подобного this-array ("2011-01-11", "2011-01-12 «)

так, чтобы в моем файле просмотра я мог проверить, существуют ли конкретные данные в массиве, например:

 if (in_array("2011-05-18", $date))       // here the $date would be the array result which -
                                        //  I am expecting to get from model via controller
        {
        echo "Found"; 
        } 

Мой контроллер выглядит следующим образом:

function index(){


    $this->load->model('mod_teacher_workingday');
    $data['date']= $this->mod_teacher_workingday->get();

    $data['main_content']='view_teacher_workingday';
    $this->load->view('includes/template',$data);
  }

Не могли бы вы показать мне, как должна выглядеть моя модель, чтобы получить результат в виде массива в моем файле представления, и я могу проверить, существуют ли конкретные данные в этом массиве? Просто для вашей информации я использую Codeigniter.

Спасибо:)

Ответы [ 3 ]

2 голосов
/ 22 декабря 2011

Должно быть:

$query = $this->db->select('date')
                  ->from('teachers')
                  ->where('teacherid',1001)
                  ->get();
$dates = array();
foreach($query->result() as $date)
{
  $dates[] = $date->date;
}
return $dates;

Возвращенный массив будет пустым, если для этого идентификатора не найдено результатов.

1 голос
/ 22 декабря 2011

Почему бы вам не поискать дату с mysql, гораздо более эффективной.

Select teacherid from teachers where date = "2011-05-18" AND teacherid = 1001

Если вы получите 0 результатов, вы знаете, что эта комбинация не существует

0 голосов
/ 22 декабря 2011

Сделайте себе одолжение, загрузите IDE с поддержкой базы данных.Netbeans позволяет подключаться к базе данных через драйвер JDBC.Вы можете сделать сырой запрос на лету прямо внутри вашего приложения.Затем, как только ваш запрос будет обработан, просто перенесите его в активную запись Codeigniter или что вы используете или просто используйте необработанный запрос Active records.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...