`` php
Php
// Databasetilkoblingsdetaljer
$ servername ="localhost";
$ brukernavn ="brukernavn";
$ passord ="passord";
$ dbname ="Database_name";
// Opprett tilkobling
$ conn =new mysqli ($ servernavn, $ brukernavn, $ passord, $ dbname);
// Kontroller tilkobling
if ($ conn-> connect_error) {
die ("Forbindelse mislyktes:". $ conn-> connect_error);
}
// Få den innloggede brukerens ID (forutsatt at du har en øktvariabel)
$ userId =$ _Session ['user_id'];
// Forbered og utfør SQL -spørringen
$ sql ="velg * fra brukere hvor id =?";
$ stmt =$ conn-> forberedelse ($ sql);
$ stmt-> bind_param ("i", $ userId);
$ stmt-> execute ();
// hente resultatet
$ resultat =$ stmt-> get_result ();
// behandle dataene
if ($ resultat-> num_rows> 0) {
// Få brukerdataene som et assosiativt utvalg
$ userdata =$ resultat-> fetch_assoc ();
// tilgang til spesifikke datafelt
$ brukernavn =$ userdata ['brukernavn'];
$ e -post =$ userdata ['e -post'];
// ...
// gjør noe med dataene
Ekko "Velkommen". $ Brukernavn. "!";
} annet {
ekko "bruker ikke funnet.";
}
// lukk uttalelsen og tilkoblingen
$ stmt-> close ();
$ conn-> close ();
?>
`` `
Forklaring:
1. Databaseforbindelse: Koden etablerer først en forbindelse til SQL -databasen din ved å bruke `MySQLI` -utvidelsen. Bytt ut plassholderverdiene med din faktiske databaseinformasjon.
2. Bruker -ID: Det forutsetter at du har en øktvariabel `$ _Session ['user_id']` som lagrer den innloggede brukerens ID. Dette settes vanligvis under påloggingsprosessen.
3. Utarbeidet uttalelse: Den bruker en forberedt uttalelse for å forhindre SQL -injeksjonssårbarheter. Variabelen `$ sql` holder spørringsmalen, og` $ stmt-> bind_param () `binder bruker-IDen som en parameter.
4. Utfør og hente: `$ Stmt-> execute ()` utfører spørringen, og `$ stmt-> get_result ()` henter resultatsettet.
5. Databehandling:
- Det sjekker om spørringen returnerte noen rader ved å bruke `$ resultat-> num_rows`.
- Hvis det eksisterer rader, henter det brukerdataene som et assosiativt utvalg ved å bruke `$ resultat-> fetch_assoc ()`.
- Du kan deretter få tilgang til spesifikke datafelt ved å bruke kolonnavnene deres (f.eks. `$ UserData ['brukernavn']`).
6. Lukk tilkoblinger: Det er viktig å lukke den utarbeidede uttalelsen og databasetilkoblingen for å frigjøre ressurser.
Viktige merknader:
- Session Management: Forsikre deg om at du har et sikkert øktstyringssystem for å opprettholde brukerpåloggingsstatus.
- Databasestruktur: Denne koden forutsetter en `brukere -tabell med en` id` -kolonne. Juster tabellen og kolonnenavn deretter for din spesifikke database.
- Sikkerhet: Bruk alltid forberedte uttalelser for å forhindre SQL -injeksjonsangrep. Unngå direkte å legge inn brukerinngang i SQL -spørsmål.
- Feilhåndtering: Implementere robuste feilhåndteringsmekanismer for å fange opp eventuelle databaseforbindelsesfeil eller feilutførelsesfeil.
- Data personvern: Forsikre deg om at du bare henter data som er nødvendig for den spesifikke funksjonaliteten og overholder data om personvern.