Кодовый конструктор Выберите запрос
У меня есть простой запрос активной записи CodeIgniter для выбора идентификатора:
$q = $this -> db
-> select('id')
-> where('email', $email)
-> limit(1)
-> get('users');
Как я могу присвоить указанный выше идентификатор переменной (например, $id) Например,
echo "ID is" . $id;
Спасибо.
9 answers
Это довольно просто. Например, вот мой случайный код:
function news_get_by_id ( $news_id )
{
$this->db->select('*');
$this->db->select("DATE_FORMAT( date, '%d.%m.%Y' ) as date_human", FALSE );
$this->db->select("DATE_FORMAT( date, '%H:%i') as time_human", FALSE );
$this->db->from('news');
$this->db->where('news_id', $news_id );
$query = $this->db->get();
if ( $query->num_rows() > 0 )
{
$row = $query->row_array();
return $row;
}
}
Это вернет "строку", выбранную вами в качестве массива, чтобы вы могли получить к ней доступ, например:
$array = news_get_by_id ( 1 );
echo $array['date_human'];
Я также настоятельно советовал бы не связывать запрос, как вы это делаете. Всегда располагайте их отдельно, как в моем коде, который явно намного легче читать.
Пожалуйста, также обратите внимание, что если вы укажете имя таблицы в from(), вы вызовете функцию get() без параметра.
Если вы не поняли, не стесняйтесь спрашивать:)
Использовать Строки результатов.
метод row() возвращает одну строку результата.
$id = $this
-> db
-> select('id')
-> where('email', $email)
-> limit(1)
-> get('users')
-> row();
Затем вы можете просто использовать, как хотите. :)
echo "ID is" . $id;
Одним коротким путем было бы
$id = $this -> db
-> select('id')
-> where('email', $email)
-> limit(1)
-> get('users')
-> row()
->id;
echo "ID is ".$id;
function news_get_by_id ( $news_id )
{
$this->db->select('*');
$this->db->select("DATE_FORMAT( date, '%d.%m.%Y' ) as date_human", FALSE );
$this->db->select("DATE_FORMAT( date, '%H:%i') as time_human", FALSE );
$this->db->from('news');
$this->db->where('news_id', $news_id );
$query = $this->db->get();
if ( $query->num_rows() > 0 )
{
$row = $query->row_array();
return $row;
}
}
This
При использовании Фреймворка CodeIgniter затем перейдите по этой ссылке на активные записи. как данные взаимодействуют со структурой и многое другое.
Следующие функции позволяют создавать инструкции SQL SELECT.
Выбор Данных
$ это->бд->получить();
Запускает запрос выбора и возвращает результат. Может использоваться сам по себе для извлечения всех записей из таблицы:
$query = $this->db->get('mytable');
С доступом к каждой строке
$query = $this->db->get('mytable');
foreach ($query->result() as $row)
{
echo $row->title;
}
Где подсказки
$this->db->get_where();
НАПРИМЕР:
$query = $this->db->get_where('mytable', array('id' => $id), $limit, $offset);
Поле выбора
$this->db->select('title, content, date');
$query = $this->db->get('mytable');
// Produces: SELECT title, content, date FROM mytable
Например,
$this->db->select('(SELECT SUM(payments.amount) FROM payments WHERE payments.invoice_id=4') AS amount_paid', FALSE);
$query = $this->db->get('mytable');
Это ваш код
$q = $this -> db
-> select('id')
-> where('email', $email)
-> limit(1)
-> get('users');
Попробуйте это
$id = $q->result()[0]->id;
Или этот, он проще
$id = $q->row()->id;
Эхо $это->бд->выбрать ('заголовок, содержимое, дата')->get_compiled_select();
public function getSalary()
{
$this->db->select('tbl_salary.*,tbl_employee.empFirstName');
$this->db->from('tbl_salary');
$this->db->join('tbl_employee','tbl_employee.empID = strong texttbl_salary.salEmpID');
$this->db->where('tbl_salary.status',0);
$query = $this->db->get();
return $query->result();
}
$query= $this->m_general->get('users' , array('id'=> $id ));
echo $query[''];
В порядке;)