Xqtor Skrevet 29. november 2002 Del Skrevet 29. november 2002 Har laget et login-script som sjekker brukernavn og passord mot en database. Denne delen fungerer som den skal. Men når jeg ønsker å hente ut opplysninger om den brukeren som er innlogget (fra samme tabell), oppstår det problemer. Her er koden fra siden som validerer (login.php). Den fullstendige adressen er byttet ut med "URL" for å ikke vise serveradressen... : <?php if (isset($logginn) && ($_SERVER['HTTP_REFERER']=='URL/index.php' || $_SERVER['HTTP_REFERER']=='URL')) { $sql = "SELECT * FROM brukere"; $resultat = mysql_query($sql); while ($row = mysql_fetch_array($resultat)) { if ($brukernavn == $row["epost"] && strcmp(md5($passord),$row["passord"])==12) { $login=1; $sql2="SELECT * FROM brukereWHEREepost=$brukernavn"; $resultat2 = mysql_query($sql2); $fornavn = $resultat2['fornavn']; break; } else { $login=0; } } if ($login==0){ include("outside.php"); } else { session_register('brukernavn'); session_register('fornavn'); include("inside.php"); } } ?> Filen "inside.php" har en echo som da er ment å skrive ut fornavnet på den som har logget seg inn, men her blir det altså ingen utskrift. Den klarer å skrive ut $brukernavn, som kommer fra et tekstfelt på index-siden. Tabellen inneholder følgende felt: - brukerid - fornavn - etternavn - epost - passord (disse er kryptert) Noen tips? _________________ -sanoJ- "Jeg har en løsning. Den passer bare ikke til dette problemet." [ endret av kilogram den 2002-11-29 16:16 ] Lenke til kommentar
Xqtor Skrevet 29. november 2002 Forfatter Del Skrevet 29. november 2002 Her er forøvrig php-koden fra 'inside.php': <?php session_start(); session_register('brukernavn'); session_register('fornavn'); ?> //Her er det HTML-kode... <?php echo "<font color='#999999' size='2'>Logget inn som: ", $brukernavn, "</font>"; echo "<br>"; echo $resultat2['fornavn']; ?> //Her er mere HTML-kode... Utskriften av $brukernavn fungerer forøvrig så det suser... _________________ -sanoJ- "Jeg har en løsning. Den passer bare ikke til dette problemet." [ Denne Melding var redigert av: Xqtor på 2002-11-29 15:01 ] Lenke til kommentar
kilogram Skrevet 29. november 2002 Del Skrevet 29. november 2002 Quote: Xqtor skrev (2002-11-29 14:51): Code: $sql2="SELECT * FROM brukereWHEREepost=$brukernavn"; Vel, prøv dette; Code: $sql2 = "SELECT * FROM brukere WHERE epost = '$brukernavn'"; Dette bør løyse problemet, om det ikkje her er snakk om feil i forumet som gjer at det manglar hermeteikn, då... :smile: Lenke til kommentar
Xqtor Skrevet 29. november 2002 Forfatter Del Skrevet 29. november 2002 Takker for svar - feilen ligger nok ikke på forumet, men snarere i fingrene på undertegnede... Det hjalp dessverre ikke å sette inn hermetegnene. Synes du resten av koden så riktig ut oxo? Det virker jo som om variabelen $fornavn er tom - henter SQL-setningen ut info kun om den påloggede brukeren? Prøvde en annen variant tidligere, men da ble utskriften alle fornavnene i databasen... Har oxo forsøkt med mysql_fetch_array() uten særlig hell. Lenke til kommentar
Xqtor Skrevet 29. november 2002 Forfatter Del Skrevet 29. november 2002 Fant ut av dette nå - slik måtte man gjøre det: $sql2 = "SELECT * FROM brukere WHERE epost='$brukernavn'"; $resultat2 = mysql_query($sql2); $row2 = mysql_fetch_array($resultat2); $fornavn = $row2["fornavn"]; $etternavn = $row2["etternavn"]; I tillegg måtte session_register($fornavn); og det samme for etternavn legges til i begge filene. Da er det bare resten igjen...! Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå