<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); class Model_music extends CI_Model { public function __construct(){ $this->load->database(); } public function getAlbums(){ $query = $this->db->query( "SELECT album.name, album.id, year, artist.name as artistName, genre.name as genreName, jpeg FROM album JOIN artist ON album.artistid = artist.id JOIN genre ON genre.id = album.genreid JOIN cover ON cover.id = album.coverid ORDER BY year" ); return $query->result(); } public function getArtistes(){ $query = $this->db->query( "SELECT artist.id AS artistId, artist.name AS artistName, album.name AS albumName, album.id AS albumId, album.year, cover.jpeg FROM album INNER JOIN artist ON album.artistId = artist.id JOIN cover ON cover.id = album.coverId GROUP BY artist.name, album.year" ); return $query->result(); } public function getMusics(){ $query = $this->db->query( "SELECT track.id AS trackId, track.number AS trackNumber, track.duration AS trackDuration, track.diskNumber AS diskNumber, album.id AS albumId, album.name AS albumName, album.year AS albumYear, artist.name AS artistName, song.id AS songId, song.name AS songName, cover.jpeg AS coverImage FROM track JOIN album ON track.albumId = album.id JOIN artist ON album.artistId = artist.id JOIN song ON track.songId = song.id JOIN cover ON album.coverId = cover.id ORDER BY album.id, track.diskNumber, track.number" ); return $query->result(); } public function getMusicsByAlbum($albumId){ $query = $this->db->query( "SELECT track.id AS trackId, track.number AS trackNumber, track.duration AS trackDuration, track.diskNumber AS diskNumber, album.id AS albumId, album.name AS albumName, artist.name AS artistName, song.id AS songId, song.name AS songName FROM track JOIN album ON track.albumId = album.id JOIN artist ON album.artistId = artist.id JOIN song ON track.songId = song.id WHERE album.id = ? ORDER BY track.diskNumber, track.number", array($albumId) ); return $query->result(); } public function get_tri_Albums($Ctri){ $query = $this->db->query( "SELECT album.name,album.id,year,artist.name as artistName, genre.name as genreName,jpeg FROM album JOIN artist ON album.artistid = artist.id JOIN genre ON genre.id = album.genreid JOIN cover ON cover.id = album.coverid ORDER BY album.name $Ctri " ); return $query->result(); } public function searchAlbums($query){ $this->db->select('album.name, album.id, year, artist.name as artistName, genre.name as genreName, jpeg'); $this->db->from('album'); $this->db->join('artist', 'album.artistid = artist.id'); $this->db->join('genre', 'genre.id = album.genreid'); $this->db->join('cover', 'cover.id = album.coverid'); $this->db->like('album.name', $query); $this->db->or_like('artist.name', $query); $this->db->order_by('album.id', 'ASC'); $query = $this->db->get(); return $query->result(); } }