Dynamiser son Site en PHP/MYSQL
Zedzdead
-
jojo673 Messages postés 235 Statut Membre -
jojo673 Messages postés 235 Statut Membre -
Bonjour,
J'ai un site de video de musique ou chaque vidéos (son "titre", son "artiste", sa "description" son "lien") son liées à une base de donnée.
Pour changer de vidéo sur le site je doit modifier la ligne :
de ma page PHP.
J'aimerais pouvoir changer l'id directement sur le site en entrant l'adresse du site suivis de ID=5 (par exemple)
Du style : www.monsitedevideo.com/index.php?id=5
Comment est-ce possible ?
Merci d'avance ;D
J'ai un site de video de musique ou chaque vidéos (son "titre", son "artiste", sa "description" son "lien") son liées à une base de donnée.
Pour changer de vidéo sur le site je doit modifier la ligne :
$sql = 'SELECT artiste,titre,description,lien WHERE id=5';
de ma page PHP.
J'aimerais pouvoir changer l'id directement sur le site en entrant l'adresse du site suivis de ID=5 (par exemple)
Du style : www.monsitedevideo.com/index.php?id=5
Comment est-ce possible ?
Merci d'avance ;D
3 réponses
-
-
Ah et c'est possible de faire en sorte qu'il declenche une autre requete si $id n'existe pas ? (enfin si l'utilisateur n'est pas aller sur www.monsitedevideo.com/index.php?id=5 mais sur www.monsitedevideo.com/index.php)
Du style :
<?php // on se connecte à notre base $base = mysql_connect ('***', '***', '***'); mysql_select_db ('***', $base) ; // definit la variable "id" de l'url index.php?id=* $id = $_GET['id']; // lancement de la requete en fonction de l'url if (empty($id)) $req = mysql_query("SELECT artiste,titre,description,lien Videos ORDER BY id DESC LIMIT 0,1"); else $req = mysql_query("SELECT artiste,titre,description,lien FROM Videos WHERE id=$id"); // on recupere le resultat sous forme d'un tableau $data = mysql_fetch_array($req); // on libère l'espace mémoire alloué pour cette interrogation de la base mysql_free_result ($req); mysql_close (); ?>
J'ai essayer avec if (empty($id)) mais ça me met des erreurs au niveau de
"$data = mysql_fetch_array($req); " et "mysql_free_result ($req); "
Merci d'avance :p -
Oui le problème se trouve ici :
// definit la variable "id" de l'url index.php?id=* $id = $_GET['id'];
Si l'utilisateur arrive sur index.php, la variable $_GET['id'] n'existe donc pas.
pour ça on peut utiliserif(isset($_GET['id'])) { //Un id à été passé } else { //aucun id, on est donc sur index.php }
Par contre je te conseil de sécuriser tes requêtes SQL avec par exemple htmlspecialchar() et trim() pour éviter des injections SQL ;).