kadutrur Skrevet 15. mars 2005 Del Skrevet 15. mars 2005 (endret) Jeg har flyttet et nettsted til ny server, og har etter det fått problemer med et innloggings-script. Den største forskjellen er at register_globals er satt til off. Koden i login-sjekken: session_start(); //Databasetilkobling include("db_connect.inc"); $brukernavn=$_POST['brukernavn']; $passord=$_POST['passord']; //Kontrollerer brukernavn og passord $logincheck_query = "SELECT * FROM min_tabell WHERE usr_email = '$brukernavn'; "; $logincheck_result = mysql_query($logincheck_query); while($login_row = mysql_fetch_array($logincheck_result)) { if($login_row["usr_email"]==$brukernavn && strcmp(md5($passord),$login_row["usr_passw"])==0) { $login = 0; $m_brukerID = $_POST['m_brukerID']; $m_fornavn = $_POST['m_fornavn']; $m_etternavn = $_POST['m_etternavn']; $m_adresse = $_POST['m_adresse']; $m_postnummer = $_POST['m_postnummer']; $m_yrke = $_POST['m_yrke']; $m_epost = $_POST['m_epost']; $m_admstatus = $_POST['m_admstatus']; $m_newspost = $_POST['m_newspost']; $m_snewsedit = $_POST['m_newsedit']; $m_newsdelete = $_POST['m_newsdelete']; $m_songpost = $_POST['m_songpost']; } else { $login = 1; } } if($login==1) { //Brukernavn og passord stemmer ikke, brukeren blir redirected til login-siden header('Location:../?cat=login'); } else { //Brukernavn og passord stemmer, session-variabler registreres session_register('m_brukerID'); session_register('m_fornavn'); session_register('m_etternavn'); session_register('m_adresse'); session_register('m_postnummer'); session_register('m_yrke'); session_register('m_epost'); session_register('m_admstatus'); session_register('m_newspost'); session_register('m_newsedit'); session_register('m_newsdelete'); session_register('m_songpost'); $accesskey = 123456789; session_register('accesskey'); header('Location:../?cat=myprofile'); } og i 'myprofile' : session_start(); //Databasetilkobling include("db_connect.inc"); $accesskey=$_POST['accesskey']; $m_brukerID = $_GET['m_brukerID']; $m_fornavn = $_GET['m_fornavn']; $m_etternavn = $_GET['m_etternavn']; $m_adresse = $_GET['m_adresse']; $m_postnummer = $_GET['m_postnummer']; $m_yrke = $_GET['m_yrke']; $m_epost = $_GET['m_epost']; $m_admstatus = $_GET['m_admstatus']; $m_newspost = $_GET['m_newspost']; $m_snewsedit = $_GET['m_newsedit']; $m_newsdelete = $_GET['m_newsdelete']; $m_songpost = $_GET['m_songpost']; if(isset($accesskey) && $accesskey==123456789) { //Gjør ting for lovlige brukere } else { //Ikke innlogget bruker include("pti_login.php"); } Jeg tror problemet ligger i 'accesskey', men er ikke helt sikker på det. Brukernavn og passord har jeg forsøkt å skrive ut før login-sjekken, og det virker. Scriptet fungerte som sagt helt fint da det lå på den andre serveren. Endret 18. mars 2005 av kadutrur Lenke til kommentar
kakkle Skrevet 15. mars 2005 Del Skrevet 15. mars 2005 (endret) Du kan ikke bruke session_register() når register globals er avslått... Bruk heller $_SESSION[variabel] = verdi... eks: $_SESSION["accesskey"] = "123456789"; For å få ut denne verdien igen på en annen side, må du bruke: $accesskey = $_SESSION["accesskey"]; evt. $accesskey = $_REQUEST["accesskey"]; // Leter gjennom get, post, cookie og session... ikke nødvendigvis i den rekkefølgen, da... ref: http://www.php.net/session_register /Kakkle Endret 15. mars 2005 av kakkle Lenke til kommentar
kadutrur Skrevet 15. mars 2005 Forfatter Del Skrevet 15. mars 2005 Mange takk - det kan se ut som dette gjør susen! Lenke til kommentar
kadutrur Skrevet 15. mars 2005 Forfatter Del Skrevet 15. mars 2005 Men denne får jeg ikke helt til å virke (se kode over) : $_SESSION["m_fornavn"] = $m_fornavn; 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å