Bonsoir,
je suis actuellement en train de faire une base de données de tous mes CDs, MP3s et Vinyles. Cet exercice me permet de me mettre un peu à PHP et la gestion d'une BdD MySQL puisque je n'y connais pas grand chose...
Du coup, j'ai trois tables différentes dans la Base "music":
****cds****
(id) - Artiste - Album - Année - Genre - Pays - Label
****mp3s****
(id) - Artiste - Album - Année - Genre
****vinyles****
(id) - Artiste - Album - Année - Genre - Pays - Label
Le tout est affiché sur 3 pages PHP différentes.
1/ Ce que j'aimerais beaucoup réussir à faire c'est la chose suivante:
lorsque je clique sur une année, par exemple 1990, ne s'affichent que les résultats de cette même année. Et puis appliquer la même chose à Artiste Genre, Pays et Label. Voila mon code actuel:
// connexion MySQL
$db = mysql_connect('localhost', 'root', '');
// on sélectionne la base
mysql_select_db('music',$db);
// on crée la requête SQL
$sql = 'SELECT artiste,album,année,genre,label,pays FROM vinyles';
// on envoie la requête
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
// on fait une boucle qui va faire un tour pour chaque enregistrement
while($data = mysql_fetch_assoc($req))
{
// on affiche les informations de l'enregistrement en cours
echo '<tr><td>'.$data['artiste'].'</td><td>'.$data['album'].'</td><td align="center">'.$data['année'].'</td><td align="center">'.$data['genre'].'</td><td align="center">'.$data['pays'].'</td><td align="center">'.$data['label'].'</td></tr>';
}
// on ferme la connexion à mysql
mysql_close();
J'ai essayé avec WHERE mais je n'arrive pas à grand chose... tout ce que je tente semble mauvais.
J'ai aussi créé un petit formulaire pour ajouter des CDs, ce qui m'amène à ma question suivante:
2/ Actuellement, mon code me permet de n'ajouter que des CDs mais j'aimerais pouvoir ajouter un objet de formulaire Select (options: CDs/MP3s/Vinyles) pour que l'écriture se fasse dans la base correspondante.
Voici mon code actuel:
// On récupère les champs
if(isset($_POST['artiste'])) $artiste=$_POST['artiste'];
else $artiste="";
if(isset($_POST['album'])) $album=$_POST['album'];
else $album="";
if(isset($_POST['année'])) $année=$_POST['année'];
else $année="";
if(isset($_POST['genre'])) $genre=$_POST['genre'];
else $genre="";
if(isset($_POST['pays'])) $pays=$_POST['pays'];
else $pays="";
if(isset($_POST['label'])) $label=$_POST['label'];
else $label="";
$db = mysql_connect('localhost', 'root', ''); // connexion à la base
mysql_select_db('music',$db); // sélection de la base
$sql = "INSERT INTO cds(artiste,album,année,genre,pays,label) VALUES('$artiste','$album','$année','$genre','$pays','$label')";
mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
// on affiche le résultat pour le visiteur
echo 'Le disque a été ajouté!';
mysql_close(); // on ferme la connexion
Un grand merci à vous à l'avance. Je prends beaucoup de plaisir à découvrir ces méthodes mais c'est quand même assez compliqué tout seul...