PHP

Erreur de lecture des profils des utilisateurs

Résolu

Bonjour,


Alors voila j'ai un problème, j'ai suivi le tuto pour afficher un profil d'utilisateur mais il me trouve une erreur :


( ! ) Fatal error: Uncaught Error: Function name must be a string in C:\wamp64\www\LDSTUD IO_site\membres\voir_profil.php on line 12


Voici mon code :


<?php
    session_start();


    include('../connexionBD.php'); 


    if (!isset($_SESSION['id'])){
        header('Location: ../index.php'); 
        exit;
    }


    // Récupèration de l'id passer en argument dans l'URL
    $id = (int) $_GET('id');


    // On récupère les informations de l'utilisateur grâce à son ID
        $user = $BD->query("SELECT * 
        FROM utilisateur 
        WHERE id = ?",
        array($id));


    $user = $user->fetch();


    if(!isset($user['id'])){
        header('Location: ../index.php');
        exit;
    }
?>


<!DOCTYPE html>
<html lang="fr">
    <head>
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <title>Mon profil</title>
    </head>


    <body>
        <h2>Voici le profil de <?= $user['pseudo'] . " " .  $user['id']; ?></h2>


        <div>Quelques informations sur lui : </div>
            <ul>
                <li>Votre id est : <?= $user['id'] ?></li>
                <li>Votre mail est : <?= $user['mail'] ?></li>
                <li>Votre compte a été crée le : <?= $user['date_creation_compte'] ?></li>
            </ul>
    <body>
</html>
796 vues
11 janvier 2020 à 0:31 (Édité)
Cette pub permet au site de vivre ...

8 commentaires

C'est bon je me suis debrouillé encore merci et pour les personnes qui aurons le même problème voici le code :


<?php
    session_start();


include_once('../ConnexionBD.php');


    if (!isset($_SESSION['id'])){
        header('Location: ../index.php'); 
        exit;
    }


    // Récupèration de l'id passer en argument dans l'URL
    $iduser = (int) $_GET['id'];


  $afficher_profil = $DB->query("SELECT * FROM membres WHERE id = ?",array($iduser));


  $afficher_profil = $afficher_profil->fetch();
  
  if(!isset($afficher_profil['id'])){
    header('Location: ../index.php');
    exit;
  }
?>
<!DOCTYPE html>
<html lang="fr">
    <head>
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <title>Mon profil</title>
    </head>


    <body>
        <h2>Voici le profil de <?= $afficher_profil['pseudo'] . " " .  $afficher_profil['id']; ?></h2>


        <div>Quelques informations sur lui : </div>
            <ul>
                <li>Votre id est : <?= $afficher_profil['id'] ?></li>
                <li>Votre mail est : <?= $afficher_profil['mail'] ?></li>
            </ul>
    <body>
</html>

Bonjour @Doppler,


C'est bizarre pourtant sur les autre sa marche !

Ducoup je fais comment pour la déclarée ?

Salut @loloxz06,


Effectivement, à la ligne 15, ta variable $db n'est pas déclarée.


En revanche pour l'erreur "Fatal error: Uncaught Error: Call to a member function query() on null in C:\wamp64\www\LDSTUDIO_site\membres\voir_profil.php on line 15", aucune connexion n'est effectivement présente.


Du coup, la requête est incorrecte car la variable db n'est pas déclarée, donc impossible de récupérer des données sur ta base de donnée... 😉


Re:


Autant pour moi 😉

Peux-tu donner le lien du tuto que tu as suivis ? 🤔

Pour la première erreur, tu as une variable indéfini à la ligne 15 😉

@Clouder ok j'ai trouver mais maintenant il me trouve des nouvelles erreur :


( ! ) Notice: Undefined variable: BD in C:\wamp64\www\LDSTUDIO_site\membres\voir_profil.php on line 15

( ! ) Fatal error: Uncaught Error: Call to a member function query() on null in C:\wamp64\www\LDSTUDIO_site\membres\voir_profil.php on line 15

( ! ) Error: Call to a member function query() on null in C:\wamp64\www\LDSTUDIO_site\membres\voir_profil.php on line 15


Je fais quoi ?

Merci.

Bonjour @loloxz06,


Sur ta page voir_profil.php ta variable ou fonction name doit être de type chaîne et non entier ou autres ..

Hello @loloxz06,


Il nous faudrait également le code de voir_profil.php pour l'aide au débogage 😉

Cette pub permet au site de vivre ...