Frigg33 Skrevet 1. juni 2008 Del Skrevet 1. juni 2008 (endret) Jeg trenger litt hjelp her.. På index.php så skal jeg hente brukernavnet som jeg har laget som session i sjekk.php.. Men når jeg kjører den så kommer det ikke opp noe, noen som vet hva som er feil? // SJEKK.PHP <?php include 'db.php'; ob_start(); // Koble til databasen og slikt mysql_connect("$host", "$db_brukernavn", "$db_passord")or die("Kan ikke koble til databasen"); mysql_select_db("$database")or die("Kan ikke velge database"); // brukernavn og passor fra form $brukernavn_logginn = $_POST['brukernavn']; $passord_logginn = $_POST['passord']; $spørring = "SELECT * FROM $tabell WHERE brukernavn = '$brukernavn_logginn' and passord = '$passord_logginn'"; $result = mysql_query($spørring); // Mysql_num_row is counting table row $bruker = mysql_num_rows($result); // If result matched $myusername and $mypassword, table row must be 1 row if($bruker == 1){ // Registrerer brukernavn og passord som session og sender videre til index.php session_register("brukernavn"); session_register("passord"); header("location:index.php"); } else { echo "Feil brukernavn eller passord"; } ?> // INDEX.PHP <? session_start(); // Sjekker om session er registrert if(!session_is_registered(brukernavn)){ header("location:logginn.php"); } ?> <html> <body> <br/> Du er innlogget <br/> Hei <?php echo "du er " . $_SESSION["brukernavn"];?> <----- HER PRØVER JEG Å FÅ FRAM BRUKERNAVNET. <br/> <a href="loggut.php"> Logg ut</a> </body> </html> Endret 1. juni 2008 av Oxaren Lenke til kommentar
Danny92 Skrevet 1. juni 2008 Del Skrevet 1. juni 2008 Du setter ikke noe value i session. Får å sette inn brukernavne må du gjøre sånn her: $_SESSION['brukernavn'] = "brukernavne som man blir logget inn med"; Lenke til kommentar
Frigg33 Skrevet 1. juni 2008 Forfatter Del Skrevet 1. juni 2008 på index.php tenker du? Lenke til kommentar
Dryper Skrevet 1. juni 2008 Del Skrevet 1. juni 2008 på index.php tenker du? om brukerene ligger i mysql så må du hente dem ut og legg dem i en streng. la oss si $brukerid og så sier du at $_SESSION['brukernavn'] = $brukerid derretter $sessionid = $_SESSION['brukernavn']; for å få det litt lettere å skrive xD mener det er slik jeg har jort det, om noe er feil si ifra noen xD Lenke til kommentar
Alex Moran Skrevet 1. juni 2008 Del Skrevet 1. juni 2008 I sjekk.php skal du ikke bruke session_register(), den er avleggs. Du setter heller ikke noen verdier, da du ikke har variabler som heter $brukernavn og $passord. Sessions settes med $_SESSION['key'] = $value; Når du skal sjekke om en session er satt, skal du bruke if (isset($_SESSION['key'])) {}, ikke session_is_registered(). (jfr. index.php) Men det viktigste er at du må sette verdier i sessionene i sjekk.php, $_SESSION['brukernavn'] = $brukernavn_fra_db; Du kan også med fordel ta en titt på mysql_real_escape_string() Lenke til kommentar
Frigg33 Skrevet 1. juni 2008 Forfatter Del Skrevet 1. juni 2008 Takk det skal jeg gjøre Lenke til kommentar
Frigg33 Skrevet 1. juni 2008 Forfatter Del Skrevet 1. juni 2008 (endret) Men nå sliter jeg med et annet problem, det virker som den ikke klarer å lage session.. Noen som ser hva som er galt? SJEKK.PHP <?php include 'db.php'; ob_start(); // Koble til databasen og slikt mysql_connect("$host", "$db_brukernavn", "$db_passord")or die("Kan ikke koble til databasen"); mysql_select_db("$database")or die("Kan ikke velge database"); // brukernavn og passor fra form $brukernavn_logginn = $_POST['brukernavn']; $passord_logginn = $_POST['passord']; $spørring = "SELECT * FROM $tabell WHERE brukernavn = '$brukernavn_logginn' and passord = '$passord_logginn'"; $result = mysql_query($spørring); // Mysql_num_row is counting table row $bruker = mysql_num_rows($result); // If result matched $myusername and $mypassword, table row must be 1 row if($bruker == 1){ // Registrerer brukernavn og passord som session og sender videre til index.php $_SESSION['brukernavn'] = $brukernavn_logginn; $_SESSION['passord'] = $passord_logginn; header("location:index.php"); } else { echo "Feil brukernavn eller passord"; } ?> INDEX.PHP <? session_start(); // Sjekker om session er registrert if(isset($_SESSION['brukernavn'])){ echo "Du er innlogget"; } else{ header("location:logginn.php"); } ?> <html> <body> <br/> <br/> Hei <?php echo "du er " . $_SESSION['brukernavn'];?> <br/> <a href="loggut.php"> Logg ut</a> </body> </html> Den går bare retttilbake til logginn.php Endret 1. juni 2008 av Oxaren Lenke til kommentar
Dryper Skrevet 2. juni 2008 Del Skrevet 2. juni 2008 Men nå sliter jeg med et annet problem, det virker som den ikke klarer å lage session.. Noen som ser hva som er galt?SJEKK.PHP <?php include 'db.php'; ob_start(); // Koble til databasen og slikt mysql_connect("$host", "$db_brukernavn", "$db_passord")or die("Kan ikke koble til databasen"); mysql_select_db("$database")or die("Kan ikke velge database"); // brukernavn og passor fra form $brukernavn_logginn = $_POST['brukernavn']; $passord_logginn = $_POST['passord']; $spørring = "SELECT * FROM $tabell WHERE brukernavn = '$brukernavn_logginn' and passord = '$passord_logginn'"; $result = mysql_query($spørring); // Mysql_num_row is counting table row $bruker = mysql_num_rows($result); // If result matched $myusername and $mypassword, table row must be 1 row if($bruker == 1){ // Registrerer brukernavn og passord som session og sender videre til index.php $_SESSION['brukernavn'] = $brukernavn_logginn; $_SESSION['passord'] = $passord_logginn; header("location:index.php"); } else { echo "Feil brukernavn eller passord"; } ?> INDEX.PHP <? session_start(); // Sjekker om session er registrert if(isset($_SESSION['brukernavn'])){ echo "Du er innlogget"; } else{ header("location:logginn.php"); } ?> <html> <body> <br/> <br/> Hei <?php echo "du er " . $_SESSION['brukernavn'];?> <br/> <a href="loggut.php"> Logg ut</a> </body> </html> Den går bare retttilbake til logginn.php hm det er noe galt der ja.. du må ha noe med session_register vet jeg vertfall Lenke til kommentar
Alex Moran Skrevet 2. juni 2008 Del Skrevet 2. juni 2008 Hei Du må ha session_start() i sjekk.php også. Lenke til kommentar
Frigg33 Skrevet 2. juni 2008 Forfatter Del Skrevet 2. juni 2008 Å herre jesus.. Selvfølgelig:P.. Takker og bukker Lenke til kommentar
Lokaltog Skrevet 2. juni 2008 Del Skrevet 2. juni 2008 Syntaksen din for Location-headeren din er også feil. Endre fra header("location:logginn.php"); til header("Location: http://example.org/logginn.php"); Lenke til kommentar
Frigg33 Skrevet 2. juni 2008 Forfatter Del Skrevet 2. juni 2008 Hvorfor det? Er det ikke enklere med header("location:logginn.php"); ? Lenke til kommentar
Lokaltog Skrevet 3. juni 2008 Del Skrevet 3. juni 2008 Hvorfor det? Er det ikke enklere med header("location:logginn.php"); ? Det kan hende det er enklere, men HTTP/1.1 krever at du oppgir en absolutt URI ("http://www....") for nettsiden som verdi, i tillegg til riktige store/små bokstaver + mellomrom i headeren ("Location: "). 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å