css + resolution de bug php
This commit is contained in:
parent
a0af043f68
commit
f7d8c15910
@ -23,7 +23,7 @@ defined('BASEPATH') OR exit('No direct script access allowed');
|
||||
| a PHP script and you can easily do that on your own.
|
||||
|
|
||||
*/
|
||||
$config['base_url'] = '/~brigitte/SAEWEB2.2/ci';
|
||||
$config['base_url'] = 'https://dwarves.iut-fbleau.fr/~boutaric/test/ci/';
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
|
@ -49,6 +49,6 @@ defined('BASEPATH') OR exit('No direct script access allowed');
|
||||
| Examples: my-controller/index -> my_controller/index
|
||||
| my-controller/my-method -> my_controller/my_method
|
||||
*/
|
||||
$route['default_controller'] = 'albums';
|
||||
$route['default_controller'] = 'welcome';
|
||||
$route['404_override'] = '';
|
||||
$route['translate_uri_dashes'] = FALSE;
|
||||
|
@ -3,22 +3,29 @@ defined('BASEPATH') OR exit('No direct script access allowed');
|
||||
|
||||
class Albums extends CI_Controller {
|
||||
|
||||
public function __construct(){
|
||||
parent::__construct();
|
||||
$this->load->model('model_music');
|
||||
}
|
||||
public function index(){
|
||||
$albums = $this->model_music->getAlbums();
|
||||
$this->load->view('layout/header');
|
||||
$this->load->view('albums_list',['albums'=>$albums]);
|
||||
$this->load->view('layout/footer');
|
||||
}
|
||||
public function __construct(){
|
||||
parent::__construct();
|
||||
$this->load->model('model_music');
|
||||
}
|
||||
|
||||
public function view($album_id){
|
||||
$songs = $this->model_music->getSongOfAlbum($album_id);
|
||||
$this->load->view('layout/header');
|
||||
$this->load->view('song_album_list',['songs'=>$songs]);
|
||||
$this->load->view('layout/footer');
|
||||
}
|
||||
public function index(){
|
||||
$albums = $this->model_music->getAlbums();
|
||||
$this->load->view('layout/header_album');
|
||||
$this->load->view('albums_list', ['albums' => $albums]);
|
||||
$this->load->view('layout/footer_album');
|
||||
}
|
||||
|
||||
public function view($album_id){
|
||||
$songs = $this->model_music->getSongsByAlbum($album_id);
|
||||
if (empty($songs)) {
|
||||
$songs = []; // Assurez-vous que $songs est un tableau vide si aucune chanson n'est trouvée
|
||||
}
|
||||
// Debugging: Log the $songs variable to see its content
|
||||
log_message('debug', 'Songs: ' . print_r($songs, true));
|
||||
|
||||
$this->load->view('layout/header_album');
|
||||
$this->load->view('song_album_list', ['songs' => $songs]);
|
||||
$this->load->view('layout/footer_album');
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
|
@ -9,15 +9,9 @@ class artistes extends CI_Controller {
|
||||
}
|
||||
public function index(){
|
||||
$artistes = $this->model_music->getArtists();
|
||||
$this->load->view('layout/header');
|
||||
$this->load->view('layout/header_artistes');
|
||||
$this->load->view('artistes_list',['artistes'=>$artistes]);
|
||||
$this->load->view('layout/footer');
|
||||
}
|
||||
public function view($AlbumsOfArtistId){
|
||||
$AlbumsOfArtist = $this->model_music->getAlbumsOfArtist($AlbumsOfArtistId);
|
||||
$this->load->view('layout/header');
|
||||
$this->load->view('albums_artist_list',['AlbumsOfArtist'=>$AlbumsOfArtist]);
|
||||
$this->load->view('layout/footer');
|
||||
$this->load->view('layout/footer_artistes');
|
||||
}
|
||||
|
||||
}
|
@ -9,9 +9,9 @@ class Albums extends CI_Controller {
|
||||
}
|
||||
public function index(){
|
||||
$albums = $this->model_music->getAlbums();
|
||||
$this->load->view('layout/header');
|
||||
$this->load->view('layout/header_chanson');
|
||||
$this->load->view('albums_list',['albums'=>$albums]);
|
||||
$this->load->view('layout/footer');
|
||||
$this->load->view('layout/footer_chanson');
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -10,8 +10,8 @@ class Song extends CI_Controller {
|
||||
|
||||
public function view($album_id){
|
||||
$songs = $this->model_music->getSongOfAlbum($album_id);
|
||||
$this->load->view('layout/header');
|
||||
$this->load->view('layout/header_song');
|
||||
$this->load->view('song_album_list',['songs'=>$songs]);
|
||||
$this->load->view('layout/footer');
|
||||
$this->load->view('layout/footer_song');
|
||||
}
|
||||
}
|
@ -1,25 +1,15 @@
|
||||
<?php
|
||||
defined('BASEPATH') OR exit('No direct script access allowed');
|
||||
|
||||
class Welcome extends CI_Controller {
|
||||
class welcome extends CI_Controller {
|
||||
|
||||
/**
|
||||
* Index Page for this controller.
|
||||
*
|
||||
* Maps to the following URL
|
||||
* http://example.com/index.php/welcome
|
||||
* - or -
|
||||
* http://example.com/index.php/welcome/index
|
||||
* - or -
|
||||
* Since this controller is set as the default controller in
|
||||
* config/routes.php, it's displayed at http://example.com/
|
||||
*
|
||||
* So any other public methods not prefixed with an underscore will
|
||||
* map to /index.php/welcome/<method_name>
|
||||
* @see https://codeigniter.com/userguide3/general/urls.html
|
||||
*/
|
||||
public function index()
|
||||
{
|
||||
$this->load->view('welcome_message');
|
||||
public function __construct(){
|
||||
parent::__construct();
|
||||
$this->load->model('model_music');
|
||||
}
|
||||
public function index(){
|
||||
$this->load->view('layout/header');
|
||||
$this->load->view('layout/footer');
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -1,14 +1,14 @@
|
||||
<h5>Albums list</h5>
|
||||
<section class="list">
|
||||
<h5>Liste des albums</h5>
|
||||
<section class="container">
|
||||
<?php
|
||||
foreach($albums as $album){
|
||||
echo "<div><article>";
|
||||
echo "<header class='short-text'>";
|
||||
echo anchor("Song/view/{$album->id}","{$album->name}");
|
||||
echo "</header>";
|
||||
echo '<img src="data:image/jpeg;base64,'.base64_encode($album->jpeg).'" />';
|
||||
echo "<footer class='short-text'>{$album->year} - {$album->artistName}</footer>
|
||||
</article></div>";
|
||||
echo "<div class='album'><article>";
|
||||
echo "<header class='album-title'>";
|
||||
echo anchor("Song/view/{$album->id}", "{$album->name}");
|
||||
echo "</header>";
|
||||
echo '<img src="data:image/jpeg;base64,' . base64_encode($album->jpeg) . '" alt="' . $album->name . '" />';
|
||||
echo "<footer class='short-text'>{$album->year} - {$album->artistName}</footer>";
|
||||
echo "</article></div>";
|
||||
}
|
||||
?>
|
||||
</section>
|
||||
|
@ -11,4 +11,4 @@ foreach($artistes as $artistes){
|
||||
//</article></div>";
|
||||
}
|
||||
?>
|
||||
</section>
|
||||
</section>
|
@ -1,3 +1,48 @@
|
||||
</main>
|
||||
</body>
|
||||
<!doctype html>
|
||||
<html lang="en" class="has-navbar-fixed-top">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>MUSIC APP</title>
|
||||
<link rel="stylesheet" href="<?= base_url('assets/style.css') ?>">
|
||||
</head>
|
||||
<body>
|
||||
<footer class="footer">
|
||||
<div class="footer-content">
|
||||
<div class="footer-section">
|
||||
<h3>Mentions légales</h3>
|
||||
<a href="html/mention_legal.html">Consulter nos mentions légales</a> <br>
|
||||
<a href="Charte_graphique.pdf" target="_blank">Consulter notre chartre graphique</a>
|
||||
</div>
|
||||
<div class="footer-section">
|
||||
<h3>Plan du site</h3>
|
||||
<a href="html/plan.html">Consulter le plan du site</a>
|
||||
</div>
|
||||
<div class="footer-section">
|
||||
<h3>Contact</h3>
|
||||
<p>Email : <a href="mailto:contact.Spotifly@gmail.com">contact.SpotiFly@gmail.com</a></p>
|
||||
<p>
|
||||
</div>
|
||||
<div class="footer-section-reseaux">
|
||||
<h3>Réseaux sociaux</h3>
|
||||
<div class="logo-reseaux">
|
||||
<p>
|
||||
<a href="https://www.instagram.com/" target="_blank" class="social-icon">
|
||||
<img src="img/Instagram.png" alt="Logo Instagram">
|
||||
</a>
|
||||
</p>
|
||||
<p>
|
||||
<a href="https://www.X.com/" target="_blank" class="social-icon">
|
||||
<img src="img/twitter.png" alt="Logo X">
|
||||
</a>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="footer-logo">
|
||||
<img src="img/logo_blanc.png" alt="SpotiFly Logo">
|
||||
<p>© 2024 SpotiFly.</p>
|
||||
</div>
|
||||
</footer>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
|
47
ci/application/views/layout/footer_album.php
Normal file
47
ci/application/views/layout/footer_album.php
Normal file
@ -0,0 +1,47 @@
|
||||
<!doctype html>
|
||||
<html lang="en" class="has-navbar-fixed-top">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>MUSIC APP</title>
|
||||
<link rel="stylesheet" href="<?= base_url('assets/style.css') ?>">
|
||||
</head>
|
||||
<body>
|
||||
<footer class="footer">
|
||||
<div class="footer-content">
|
||||
<div class="footer-section">
|
||||
<h3>Mentions légales</h3>
|
||||
<a href="html/mention_legal.html">Consulter nos mentions légales</a> <br>
|
||||
<a href="Charte_graphique.pdf" target="_blank">Consulter notre chartre graphique</a>
|
||||
</div>
|
||||
<div class="footer-section">
|
||||
<h3>Plan du site</h3>
|
||||
<a href="html/plan.html">Consulter le plan du site</a>
|
||||
</div>
|
||||
<div class="footer-section">
|
||||
<h3>Contact</h3>
|
||||
<p>Email : <a href="mailto:contact.Spotifly@gmail.com">contact.SpotiFly@gmail.com</a></p>
|
||||
<p>
|
||||
</div>
|
||||
<div class="footer-section-reseaux">
|
||||
<h3>Réseaux sociaux</h3>
|
||||
<div class="logo-reseaux">
|
||||
<p>
|
||||
<a href="https://www.instagram.com/" target="_blank" class="social-icon">
|
||||
<img src="img/Instagram.png" alt="Logo Instagram">
|
||||
</a>
|
||||
</p>
|
||||
<p>
|
||||
<a href="https://www.X.com/" target="_blank" class="social-icon">
|
||||
<img src="img/twitter.png" alt="Logo X">
|
||||
</a>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="footer-logo">
|
||||
<img src="img/logo_blanc.png" alt="SpotiFly Logo">
|
||||
<p>© 2024 SpotiFly.</p>
|
||||
</div>
|
||||
</footer>
|
||||
</body>
|
||||
</html>
|
47
ci/application/views/layout/footer_artistes.php
Normal file
47
ci/application/views/layout/footer_artistes.php
Normal file
@ -0,0 +1,47 @@
|
||||
<!doctype html>
|
||||
<html lang="en" class="has-navbar-fixed-top">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>MUSIC APP</title>
|
||||
<link rel="stylesheet" href="<?= base_url('assets/style.css') ?>">
|
||||
</head>
|
||||
<body>
|
||||
<footer class="footer">
|
||||
<div class="footer-content">
|
||||
<div class="footer-section">
|
||||
<h3>Mentions légales</h3>
|
||||
<a href="html/mention_legal.html">Consulter nos mentions légales</a> <br>
|
||||
<a href="Charte_graphique.pdf" target="_blank">Consulter notre chartre graphique</a>
|
||||
</div>
|
||||
<div class="footer-section">
|
||||
<h3>Plan du site</h3>
|
||||
<a href="html/plan.html">Consulter le plan du site</a>
|
||||
</div>
|
||||
<div class="footer-section">
|
||||
<h3>Contact</h3>
|
||||
<p>Email : <a href="mailto:contact.Spotifly@gmail.com">contact.SpotiFly@gmail.com</a></p>
|
||||
<p>
|
||||
</div>
|
||||
<div class="footer-section-reseaux">
|
||||
<h3>Réseaux sociaux</h3>
|
||||
<div class="logo-reseaux">
|
||||
<p>
|
||||
<a href="https://www.instagram.com/" target="_blank" class="social-icon">
|
||||
<img src="img/Instagram.png" alt="Logo Instagram">
|
||||
</a>
|
||||
</p>
|
||||
<p>
|
||||
<a href="https://www.X.com/" target="_blank" class="social-icon">
|
||||
<img src="img/twitter.png" alt="Logo X">
|
||||
</a>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="footer-logo">
|
||||
<img src="img/logo_blanc.png" alt="SpotiFly Logo">
|
||||
<p>© 2024 SpotiFly.</p>
|
||||
</div>
|
||||
</footer>
|
||||
</body>
|
||||
</html>
|
47
ci/application/views/layout/footer_song.php
Normal file
47
ci/application/views/layout/footer_song.php
Normal file
@ -0,0 +1,47 @@
|
||||
<!doctype html>
|
||||
<html lang="en" class="has-navbar-fixed-top">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>MUSIC APP</title>
|
||||
<link rel="stylesheet" href="<?= base_url('assets/style.css') ?>">
|
||||
</head>
|
||||
<body>
|
||||
<footer class="footer">
|
||||
<div class="footer-content">
|
||||
<div class="footer-section">
|
||||
<h3>Mentions légales</h3>
|
||||
<a href="html/mention_legal.html">Consulter nos mentions légales</a> <br>
|
||||
<a href="Charte_graphique.pdf" target="_blank">Consulter notre chartre graphique</a>
|
||||
</div>
|
||||
<div class="footer-section">
|
||||
<h3>Plan du site</h3>
|
||||
<a href="html/plan.html">Consulter le plan du site</a>
|
||||
</div>
|
||||
<div class="footer-section">
|
||||
<h3>Contact</h3>
|
||||
<p>Email : <a href="mailto:contact.Spotifly@gmail.com">contact.SpotiFly@gmail.com</a></p>
|
||||
<p>
|
||||
</div>
|
||||
<div class="footer-section-reseaux">
|
||||
<h3>Réseaux sociaux</h3>
|
||||
<div class="logo-reseaux">
|
||||
<p>
|
||||
<a href="https://www.instagram.com/" target="_blank" class="social-icon">
|
||||
<img src="img/Instagram.png" alt="Logo Instagram">
|
||||
</a>
|
||||
</p>
|
||||
<p>
|
||||
<a href="https://www.X.com/" target="_blank" class="social-icon">
|
||||
<img src="img/twitter.png" alt="Logo X">
|
||||
</a>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="footer-logo">
|
||||
<img src="img/logo_blanc.png" alt="SpotiFly Logo">
|
||||
<p>© 2024 SpotiFly.</p>
|
||||
</div>
|
||||
</footer>
|
||||
</body>
|
||||
</html>
|
@ -1,28 +1,71 @@
|
||||
<!doctype html>
|
||||
<html lang="en" class="has-navbar-fixed-top">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>MUSIC APP</title>
|
||||
<link
|
||||
rel="stylesheet"
|
||||
href="https://cdn.jsdelivr.net/npm/@picocss/pico@2/css/pico.min.css"
|
||||
/>
|
||||
|
||||
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
|
||||
<?php=link_tag('assets/style.css')?>
|
||||
</head>
|
||||
<body>
|
||||
<main class='container'>
|
||||
<nav>
|
||||
<ul>
|
||||
<li><strong>Music APP</strong></li>
|
||||
</ul>
|
||||
<input type="search" id="site-search" name="q"/>
|
||||
<input type="submit" value="Rechercher" \>
|
||||
<ul>
|
||||
<li><?=anchor('albums','Albums');?></li>
|
||||
<li><?=anchor('artistes','Artistes');?></li>
|
||||
<li><?=anchor('playlist','Playlist');?></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>MUSIC APP</title>
|
||||
<link rel="stylesheet" href="<?= base_url('assets/style.css') ?>">
|
||||
</head>
|
||||
<body>
|
||||
<main class='container'>
|
||||
<header class="navbar">
|
||||
<div class="logo">
|
||||
<img src="assets/img/SpotiFly.png" alt="SpotiFly">
|
||||
</div>
|
||||
<nav class="menu">
|
||||
<ul>
|
||||
<li><?= anchor('https://dwarves.iut-fbleau.fr/~boutaric/test/ci/','Home'); ?></li>
|
||||
<li><?= anchor('albums','Albums'); ?></li>
|
||||
<li><?= anchor('artistes','Artistes'); ?></li>
|
||||
<li><?= anchor('playlist','Playlist'); ?></li>
|
||||
</ul>
|
||||
</nav>
|
||||
<div class="user">
|
||||
<a class="bouton" href="html/Connexion.html">Connexion</a>
|
||||
<a class="bouton" href="html/Inscription.html">S'inscrire</a>
|
||||
</div>
|
||||
</header>
|
||||
<div id="Page">
|
||||
<div class="content">
|
||||
<img src="assets/img/SpotiFly.png" alt="SpotiFly">
|
||||
<div class="text-page">
|
||||
<h2>SpotiFly : envole-toi au rythme de la musique !</h2>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="header"> </div>
|
||||
<div class="content">
|
||||
<section id="about" class="box">
|
||||
<div class="box-content">
|
||||
<img src="assets/img/argent.png" alt="Description de l'image 2">
|
||||
<div class="text-content">
|
||||
<h2>1 mois gratuit?</h2>
|
||||
<p>"Découvrez une expérience musicale sans limites avec notre offre exclusive : abonnez-vous dès aujourd'hui et bénéficiez d'un mois complet GRATUIT pour explorer notre vaste catalogue de musique. Plongez dans un univers de sonorités variées et profitez d'un accès illimité à vos artistes préférés, sans engagement ! Rejoignez-nous dès maintenant pour un mois d'exploration musicale sans pareil."</p>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<section id="product" class="box">
|
||||
<div class="box-img">
|
||||
<img src="assets/img/argent.png" alt="Description de l'image 3">
|
||||
<div class="text-content">
|
||||
<h2>La Cognition</h2>
|
||||
<p>Découvrez notre nouveaux cube v3 qui peut avoir la voix de votre choix.</p>
|
||||
<p>Plongez dans une réalité où la cognition rencontre la technologie. Notre cube connecté va au-delà de l'ordinaire, réagissant à votre pensée et intégrant la puissance de la cognition pour une expérience holographique incomparable.</p>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<section id="sale" class="box">
|
||||
<div class="box-content">
|
||||
<img src="assets/img/Statistique.png" alt="Description de l'image 4">
|
||||
<div class="text-content">
|
||||
<h2>Statistiques</h2>
|
||||
<p>"Découvrez les statistiques de notre application de musique : des millions d'utilisateurs s'immergent dans une expérience audio immersive, créant des milliers de playlists et explorant une multitude de genres musicaux, tout en bénéficiant d'un mois gratuit dès l'abonnement !"</p>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
<script src="assets/bouton.js"></script>
|
||||
<button id="scrollTopBtn" onclick="scrollToTop()">
|
||||
<span>↑</span>
|
||||
</button>
|
||||
</body>
|
||||
</html>
|
||||
|
33
ci/application/views/layout/header_album.php
Normal file
33
ci/application/views/layout/header_album.php
Normal file
@ -0,0 +1,33 @@
|
||||
<!doctype html>
|
||||
<html lang="en" class="has-navbar-fixed-top">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>MUSIC APP</title>
|
||||
<link rel="stylesheet" href="<?= base_url('assets/style.css') ?>">
|
||||
<link rel="stylesheet" href="<?= base_url('assets/album.css') ?>">
|
||||
</head>
|
||||
<body>
|
||||
<main class='container'>
|
||||
<header class="navbar">
|
||||
<div class="logo">
|
||||
<img src="assets/img/SpotiFly.png" alt="SpotiFly">
|
||||
</div>
|
||||
<nav class="menu">
|
||||
<ul>
|
||||
<li><?= anchor('https://dwarves.iut-fbleau.fr/~boutaric/test/ci/','Home'); ?></li>
|
||||
<li><?= anchor('albums','Albums'); ?></li>
|
||||
<li><?= anchor('artistes','Artistes'); ?></li>
|
||||
<li><?= anchor('playlist','Playlist'); ?></li>
|
||||
</ul>
|
||||
</nav>
|
||||
<div class="user">
|
||||
<a class="bouton" href="html/Connexion.html">Connexion</a>
|
||||
<a class="bouton" href="html/Inscription.html">S'inscrire</a>
|
||||
</div>
|
||||
</header>
|
||||
<script src="assets/bouton.js"></script>
|
||||
<button id="scrollTopBtn" onclick="scrollToTop()">
|
||||
<span>↑</span>
|
||||
</button>
|
||||
</body>
|
||||
</html>
|
32
ci/application/views/layout/header_artistes.php
Normal file
32
ci/application/views/layout/header_artistes.php
Normal file
@ -0,0 +1,32 @@
|
||||
<!doctype html>
|
||||
<html lang="en" class="has-navbar-fixed-top">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>MUSIC APP</title>
|
||||
<link rel="stylesheet" href="<?= base_url('assets/style.css') ?>">
|
||||
</head>
|
||||
<body>
|
||||
<main class='container'>
|
||||
<header class="navbar">
|
||||
<div class="logo">
|
||||
<img src="assets/img/SpotiFly.png" alt="SpotiFly">
|
||||
</div>
|
||||
<nav class="menu">
|
||||
<ul>
|
||||
<li><?= anchor('https://dwarves.iut-fbleau.fr/~boutaric/test/ci/','Home'); ?></li>
|
||||
<li><?= anchor('albums','Albums'); ?></li>
|
||||
<li><?= anchor('artistes','Artistes'); ?></li>
|
||||
<li><?= anchor('playlist','Playlist'); ?></li>
|
||||
</ul>
|
||||
</nav>
|
||||
<div class="user">
|
||||
<a class="bouton" href="html/Connexion.html">Connexion</a>
|
||||
<a class="bouton" href="html/Inscription.html">S'inscrire</a>
|
||||
</div>
|
||||
</header>
|
||||
<script src="assets/bouton.js"></script>
|
||||
<button id="scrollTopBtn" onclick="scrollToTop()">
|
||||
<span>↑</span>
|
||||
</button>
|
||||
</body>
|
||||
</html>
|
32
ci/application/views/layout/header_song.php
Normal file
32
ci/application/views/layout/header_song.php
Normal file
@ -0,0 +1,32 @@
|
||||
<!doctype html>
|
||||
<html lang="en" class="has-navbar-fixed-top">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>MUSIC APP</title>
|
||||
<link rel="stylesheet" href="<?= base_url('assets/style.css') ?>">
|
||||
</head>
|
||||
<body>
|
||||
<main class='container'>
|
||||
<header class="navbar">
|
||||
<div class="logo">
|
||||
<img src="assets/img/SpotiFly.png" alt="SpotiFly">
|
||||
</div>
|
||||
<nav class="menu">
|
||||
<ul>
|
||||
<li><?= anchor('https://dwarves.iut-fbleau.fr/~boutaric/test/ci/','Home'); ?></li>
|
||||
<li><?= anchor('albums','Albums'); ?></li>
|
||||
<li><?= anchor('artistes','Artistes'); ?></li>
|
||||
<li><?= anchor('playlist','Playlist'); ?></li>
|
||||
</ul>
|
||||
</nav>
|
||||
<div class="user">
|
||||
<a class="bouton" href="html/Connexion.html">Connexion</a>
|
||||
<a class="bouton" href="html/Inscription.html">S'inscrire</a>
|
||||
</div>
|
||||
</header>
|
||||
<script src="assets/bouton.js"></script>
|
||||
<button id="scrollTopBtn" onclick="scrollToTop()">
|
||||
<span>↑</span>
|
||||
</button>
|
||||
</body>
|
||||
</html>
|
@ -12,4 +12,4 @@ foreach($songs as $song){
|
||||
echo "</article></div>";
|
||||
}
|
||||
?>
|
||||
</section>
|
||||
</section>
|
BIN
ci/assets/SpotiFly-removebg-preview.png
Normal file
BIN
ci/assets/SpotiFly-removebg-preview.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 39 KiB |
42
ci/assets/album.css
Normal file
42
ci/assets/album.css
Normal file
@ -0,0 +1,42 @@
|
||||
/* assets/albums_style.css */
|
||||
.container {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
justify-content: space-between;
|
||||
margin: 0 auto;
|
||||
padding: 20px;
|
||||
}
|
||||
|
||||
.album {
|
||||
box-sizing: border-box;
|
||||
width: 18%;
|
||||
margin-bottom: 20px;
|
||||
border: 1px solid #ccc;
|
||||
border-radius: 10px;
|
||||
padding: 10px;
|
||||
text-align: center;
|
||||
background-color: #f9f9f9;
|
||||
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
|
||||
transition: transform 0.2s;
|
||||
}
|
||||
|
||||
.album img {
|
||||
max-width: 100%;
|
||||
height: auto;
|
||||
border-bottom: 1px solid #ccc;
|
||||
margin-bottom: 10px;
|
||||
border-radius: 10px 10px 0 0;
|
||||
}
|
||||
|
||||
.album-title {
|
||||
font-size: 1.2em;
|
||||
font-weight: bold;
|
||||
color: #333;
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.album:hover {
|
||||
transform: scale(1.05);
|
||||
}
|
||||
|
||||
|
25
ci/assets/bouton.js
Normal file
25
ci/assets/bouton.js
Normal file
@ -0,0 +1,25 @@
|
||||
function scrollToTop() {
|
||||
window.scrollTo({
|
||||
top: 0,
|
||||
behavior: 'smooth'
|
||||
});
|
||||
}
|
||||
|
||||
// Afficher ou masquer le bouton de scroll en fonction de la position dans la page
|
||||
document.addEventListener('scroll', function () {
|
||||
const scrollTopBtn = document.getElementById('scrollTopBtn');
|
||||
if (window.scrollY > 200) {
|
||||
scrollTopBtn.style.display = 'block';
|
||||
} else {
|
||||
scrollTopBtn.style.display = 'none';
|
||||
}
|
||||
});
|
||||
// Menu burger
|
||||
document.addEventListener('DOMContentLoaded', function () {
|
||||
const burgerMenu = document.querySelector('.burger-menu');
|
||||
const navLinks = document.querySelector('.nav-links');
|
||||
|
||||
burgerMenu.addEventListener('click', function () {
|
||||
navLinks.classList.toggle('show');
|
||||
});
|
||||
});
|
BIN
ci/assets/img/SpotiFly.png
Normal file
BIN
ci/assets/img/SpotiFly.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 39 KiB |
BIN
ci/assets/img/Statistique.png
Normal file
BIN
ci/assets/img/Statistique.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 2.6 KiB |
BIN
ci/assets/img/argent.png
Normal file
BIN
ci/assets/img/argent.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 21 KiB |
BIN
ci/assets/img/fond.jpeg
Normal file
BIN
ci/assets/img/fond.jpeg
Normal file
Binary file not shown.
After Width: | Height: | Size: 3.7 KiB |
BIN
ci/assets/img/logo_noir.png
Normal file
BIN
ci/assets/img/logo_noir.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 40 KiB |
@ -1,20 +1,278 @@
|
||||
section.list
|
||||
{
|
||||
display : flex;
|
||||
justify-content : space-between;
|
||||
flex-wrap:wrap;
|
||||
}
|
||||
section.list > div
|
||||
{
|
||||
width : 30%;
|
||||
}
|
||||
section.list img {
|
||||
display:inline-block;
|
||||
body {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
box-sizing: border-box;
|
||||
background-color: white;
|
||||
font-size: 16px;
|
||||
|
||||
}
|
||||
.short-text {
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
text-overflow: ellipsis;
|
||||
.navbar a {
|
||||
color: white;
|
||||
text-decoration: none;
|
||||
margin: 0 5px;
|
||||
|
||||
}
|
||||
.navbar {
|
||||
background-color: black;
|
||||
padding: 20px; /* Ajuste la valeur de padding selon tes besoins */
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
position: fixed;
|
||||
width: 100%;
|
||||
top: 0;
|
||||
z-index: 1000;
|
||||
}
|
||||
.bouton a{
|
||||
color: #FFF;
|
||||
text-decoration: none;
|
||||
}
|
||||
.bouton {
|
||||
display: flex;
|
||||
text-decoration: none;
|
||||
background-color: #1ed860;
|
||||
font-weight: bold;
|
||||
padding: 12px;
|
||||
border-radius: 60px;
|
||||
border: 2px;
|
||||
margin: 0 40px;
|
||||
}
|
||||
.user{
|
||||
margin-right: 50px;
|
||||
padding-left: center;
|
||||
list-style: none;
|
||||
display: flex;
|
||||
text-decoration: none;
|
||||
font-weight: bold;
|
||||
justify-content: space-between;
|
||||
}
|
||||
.menu {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
.menu ul {
|
||||
list-style: none;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.menu li {
|
||||
display: inline-block;
|
||||
margin-right: 15px;
|
||||
}
|
||||
|
||||
.menu a {
|
||||
text-decoration: none;
|
||||
font-weight: bold;
|
||||
color: #FFF;
|
||||
font-family: Open Sans, 'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif;
|
||||
font-size: 1.2rem;
|
||||
}
|
||||
.menu_déroulant {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.menu_déroulant_content {
|
||||
display: none;
|
||||
position: absolute;
|
||||
top: 100%;
|
||||
background-color: black;
|
||||
min-width: 170px;
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
.menu_déroulant:hover .menu_déroulant_content {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.menu_déroulant_content a {
|
||||
color: #fff;
|
||||
padding: 10px;
|
||||
text-decoration: none;
|
||||
display: block;
|
||||
}
|
||||
|
||||
.menu_déroulant_content a:hover {
|
||||
color: #1ed860;
|
||||
}
|
||||
#Page {
|
||||
text-align: center;
|
||||
padding: 50px 0;
|
||||
background: url(img/fond.jpeg);
|
||||
}
|
||||
|
||||
#Page img {
|
||||
width: 400px;
|
||||
height: 400PX;
|
||||
}
|
||||
|
||||
.text-page {
|
||||
border-top: 2px solid #1ed860;
|
||||
margin-top: 100px;
|
||||
color: white;
|
||||
}
|
||||
|
||||
#header {
|
||||
background-color: #1ed860;
|
||||
padding: 2px 0;
|
||||
}
|
||||
|
||||
.content {
|
||||
max-width: 1200px;
|
||||
margin: 80px auto 0;
|
||||
padding: 20px;
|
||||
}
|
||||
.mention_legale h2{
|
||||
color: #1ed860;
|
||||
font-size: 2em;
|
||||
margin-left: 400px;
|
||||
}
|
||||
.mention_legale{
|
||||
background-color: white;
|
||||
border-radius: 20px;
|
||||
margin: 60px auto 0;
|
||||
padding: 40px;
|
||||
}
|
||||
.box {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
border-radius: 50px;
|
||||
padding: 20px;
|
||||
margin: 20px 0;
|
||||
}
|
||||
.box-img {
|
||||
display: flex;
|
||||
flex-direction: row-reverse;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
}
|
||||
.box .box-img img{
|
||||
width: 250px;
|
||||
height: 150px;
|
||||
border-radius: 8px;
|
||||
padding-right: 50px;
|
||||
margin-left: 100px;
|
||||
object-fit: initial;
|
||||
}
|
||||
.box-content{
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
}
|
||||
.text-content{
|
||||
flex: 1;
|
||||
}
|
||||
.box p{
|
||||
font-family: 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif;
|
||||
font-size: 1.2em;
|
||||
margin-bottom: 10px;
|
||||
text-align: center;
|
||||
}
|
||||
.box h2 {
|
||||
color: #81b71a;
|
||||
font-weight: bold;
|
||||
font-family: 'Open Sans', 'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif;
|
||||
font-size: 3.5em;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
.box h3{
|
||||
color: #1ed860;
|
||||
font-weight: bold;
|
||||
font-size: 2em;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
.box p{
|
||||
text-align: justify;
|
||||
}
|
||||
.box img {
|
||||
width: 200px;
|
||||
height: 200px;
|
||||
object-fit: cover;
|
||||
border-radius: 8px;
|
||||
margin-right: 50px;
|
||||
margin-left: 40px;
|
||||
}
|
||||
.content-section h2 {
|
||||
color: #1ed860;
|
||||
}
|
||||
body {
|
||||
font-family: 'Arial', sans-serif;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
font-size: 16px;
|
||||
}
|
||||
.logo img {
|
||||
padding-left: 10px;
|
||||
width: 200px;
|
||||
height: 80px;
|
||||
margin-right: auto;
|
||||
}
|
||||
img {
|
||||
max-width: 100%;
|
||||
height: auto;
|
||||
}
|
||||
.footer {
|
||||
background-color: black;
|
||||
color: white;
|
||||
padding: 20px;
|
||||
text-align: center;
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
|
||||
.footer-content {
|
||||
display: flex;
|
||||
justify-content: space-around;
|
||||
}
|
||||
|
||||
.footer-section {
|
||||
text-align: center;
|
||||
margin: 10px;
|
||||
}
|
||||
|
||||
.footer-logo {
|
||||
order: 1;
|
||||
}
|
||||
|
||||
.logo-reseaux {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.logo-reseaux img {
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
}
|
||||
|
||||
.footer-section h3 {
|
||||
margin-bottom: 10px;
|
||||
font-size: 1.5em;
|
||||
}
|
||||
|
||||
.footer-section a {
|
||||
color: white;
|
||||
}
|
||||
|
||||
.footer-section img {
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
margin-right: 5px;
|
||||
}
|
||||
#scrollTopBtn {
|
||||
display: none;
|
||||
position: fixed;
|
||||
bottom: 20px;
|
||||
right: 20px;
|
||||
background-color: #1ed860;
|
||||
border: none;
|
||||
border-radius: 5px;
|
||||
font-size: 25px;
|
||||
padding: 10px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user