Vous étiez vraiment proche, vous n'avez pas récupéré correctement :
require("config.php");
if(empty($_SESSION['user']['id']))
{
header("Location: index.php");
die("Redirecting to index.php");
}
$userid = $_SESSION['user']['id'];
$sql = "SELECT my_music, my_movies, my_weather, my_maps, my_news
FROM user_preferences
WHERE user_id = :userID";
$stmt = $db->prepare($sql);
$stmt->bindParam(":userID", $userid);
$stmt->execute();
$result = $stmt->fetch();
- Vous liez Params sur l'objet de déclaration et non sur la connexion
- Vous récupérez également la déclaration, pas la connexion
- fetchAll renvoie un tableau à 2 dimensions si vous voulez voir le contenu utiliser
var_dump
pasecho
<input id="mymusic"
type="checkbox"
name="mymusic"
<?php echo ($result['my_music']==1 ? 'checked' : '');?>
/>
<input id="mymovies"
type="checkbox"
name="mymovies"
<?php echo ($result['mymovies']==1 ? 'checked' : '');?>
/>