|
`` `PHP
Php
// Détails de la connexion de la base de données
$ servername ="localhost";
$ username ="nom d'utilisateur";
$ mot de passe ="mot de passe";
$ dbname ="database_name";
// Créer une connexion
$ Conn =new mysqli ($ servername, $ username, $ mot de passe, $ dbname);
// Vérifiez la connexion
if ($ con-> connect_error) {
Die ("La connexion a échoué:". $ con-> connect_error);
}
// Obtenez l'ID de l'utilisateur connecté (en supposant que vous avez une variable de session)
$ userId =$ _Session ['user_id'];
// Préparer et exécuter la requête SQL
$ sql ="select * dans les utilisateurs où id =?";
$ stmt =$ con-> prépare ($ sql);
$ stmt-> bind_param ("i", $ userId);
$ stmt-> execute ();
// récupérer le résultat
$ result =$ stmt-> get_result ();
// traite les données
if ($ result-> num_rows> 0) {
// Obtenez les données utilisateur en tant que tableau associatif
$ userdata =$ result-> fetch_assoc ();
// accéder aux champs de données spécifiques
$ username =$ userdata ['username'];
$ email =$ userdata ['e-mail'];
// ...
// faire quelque chose avec les données
Echo «Bienvenue». $ Nom d'utilisateur. "!";
} autre {
Echo "Utilisateur non trouvé";
}
// Fermez l'instruction et la connexion
$ stmt-> close ();
$ Conn-> close ();
?>
`` '
Explication:
1. Connexion de la base de données: Le code établit d'abord une connexion à votre base de données SQL à l'aide de l'extension `mysqli`. Remplacez les valeurs d'espace réservé par vos informations d'identification réelles de base de données.
2. ID utilisateur: Il suppose que vous avez une variable de session `$ _SESSION ['user_id']` qui stocke l'ID de l'utilisateur connecté. Ceci est généralement défini pendant le processus de connexion.
3. Déclaration préparée: Il utilise une instruction préparée pour empêcher les vulnérabilités d'injection SQL. La variable `$ sql` contient le modèle de requête, et` $ stmt-> bind_param () `lie l'ID utilisateur en tant que paramètre.
4. Exécuter et récupérer: Le `$ stmt-> execute ()` exécute la requête, et `$ stmt-> get_result ()` récupère l'ensemble de résultats.
5. Traitement des données:
- Il vérifie si la requête a renvoyé des lignes en utilisant `$ result-> num_rows`.
- S'il existe des lignes, il récupère les données utilisateur en tant que tableau associatif en utilisant `$ result-> fetch_assoc () '.
- Vous pouvez ensuite accéder aux champs de données spécifiques à l'aide de leurs noms de colonne (par exemple, `$ userdata ['nom d'utilisateur']`).
6. Clôtres de fermeture: Il est important de fermer l'instruction préparée et la connexion de la base de données pour libérer les ressources.
Remarques importantes:
- Gestion de session: Assurez-vous que vous avez un système de gestion de session sécurisé pour maintenir l'état de connexion des utilisateurs.
- Structure de la base de données: Ce code suppose une table `` Utilisateurs 'avec une colonne «ID». Ajustez les noms de table et de colonne en conséquence pour votre base de données spécifique.
- Sécurité: Utilisez toujours des instructions préparées pour empêcher les attaques d'injection SQL. Évitez d'intégrer directement la saisie de l'utilisateur dans les requêtes SQL.
- Gestion des erreurs: Implémentez les mécanismes de gestion des erreurs robustes pour assister à toutes les erreurs de connexion de base de données ou défaillances d'exécution de requête.
- Confidentialité des données: Assurez-vous que vous ne récupérez que des données nécessaires aux fonctionnalités spécifiques et que vous respectez les réglementations de confidentialité des données.
|