webForumDet fria alternativet

Funkar i FF men inte i IE?

PHP

10 svar · 333 visningar · startad av streetrobban

Medlem sedan jan. 20011 140 inlägg
Frågan#1

Tjena,

Har problem med ett inloggningsscript. Det funkar fint i Opera och FireFox men det verkar inte funka (eller väldigt sällan, random) i Internet Explorer. Så här ser koden ut:

logga_in.php

	<form method="post" action="logga_in2.php">
	<table border="0" width="" cellspacing="0" cellpadding="0">
	<tr>
		<td>
		<span class="submeny">EPOST</a><br/>
		<input type="text" name="epost" class="input"><br/>
		</td>
		<td width="20px">
		</td>
		<td>
		<span class="submeny">LÖSENORD</a><br/>
		<input type="password" name="lösenord" class="input"><br/>
		</td>
	</tr>
	<tr>
		<td class="3">
		&nbsp;
		</td>
	</tr>
	<tr>
		<td class="3">
		<input type="image" src="bilder/knapp.logga_in.gif">	
		</td>
	</tr>
	</table>
	</form>

logga_in2.php

<?php
// Skapa en session med viktig information
session_start();
$aktiv = "1";
$användarnamn = $_POST['epost'];
$lösenord = $_POST['lösenord'];
session_register("aktiv");
session_register("användarnamn");
session_register("lösenord");
session_register("kund_id");

require 'inkludera/databas.php';
	
// Kolla om användaren finns
mysql_select_db("databasen");
$get = mysql_query("SELECT * FROM användare WHERE epost = '$användarnamn'");
$userRow = mysql_fetch_array($get);

// Ta fram användarens ID nummer
$kund_id = $userRow['id'];

if($användarnamn == $userRow["epost"] && $lösenord == $userRow["lösenord"] && $userRow['handla'] == '1') 
{
	// Om användaren finns och allt är ok, utför
	header('Location: kund.php');
} 
else 
{
	// Om användaren inte finns eller att något inte stämmer, utför
	header('Location: framsidan.php');
}

// Stäng databasen
mysql_close($open);
?>

logga_ut.php

<?php
header("Location: framsidan.php");

session_start();
$aktiv = "0"; 
session_unregister("aktiv");
session_unregister("användarnamn");
session_unregister("lösenord");
session_unregister("kund_id");
session_unregister("komplettURL");
session_unset();
session_destroy();
?>

Väldigt tacksam för svar.

Medlem sedan maj 20021 558 inlägg
#2

Vad fungerar inte? Vad händer? Felmeddelanden?

Medlem sedan jan. 20011 140 inlägg
#3

Inga felmeddelanden, den loggar bara inte in. Som om man skriver fel lösenord...

Medlem sedan aug. 20002 975 inlägg
#4

Min första tanke när det gäller IE och sessioner som inte fungerar, när det fungerar i andra webbläsare är:
Kan det vara så att du har en domän (t.ex. tk-domän) i adressfältet, medan du har ditt skript på en annan domän i en frame i ett frameset.
Då kommer IE6 säkerhetsinställningar att spärra cookien.

Medlem sedan jan. 20011 140 inlägg
#5

Matte: Så är fallet med adressen. Inte en .tk men en pekare bara. Men jag testade med den "riktiga" adressen också, det funkade inte heller... :(

Medlem sedan jan. 20011 140 inlägg
#6

Kan det vara något i min kod som IE inte uppfattar? Eller, finns det en bättre lösning ett inloggningsscript som mitt?

Medlem sedan aug. 20002 975 inlägg
#7

Har du testat med att sänka säkerhetskraven i IE ?
Då ser du om det är det som är problemet.
En fullösning kan då vara: http://www.phpportalen.net/viewtopic.php?p=110209#110209

Medlem sedan jan. 2005110 inlägg
#8

Har aldrig provat själv, men det låter rätt vanskligt att använda svenska tecken i formulärfältens namn (lösenord). Skulle heller aldrig få för mig att använda svenska tecken i PHP eller MySQL. Livet blir lättare om man inte blandar in konstiga tecken. Själv använder jag alltid engelska (username, password, etc.) när jag programmerar, även om själva sidan är på svenska. Det är ju värt ett försök iaf.

Medlem sedan maj 20021 558 inlägg
#9

setcookie("hejsan", 'tjena', time()+36000);

Den där brukar jag använda. Vet inte om det är någon skillnad.

Medlem sedan maj 20021 558 inlägg
#10

Just... IE har inte stöd för åäö. Inte i adresser i alla fall, så det kan ju kanske vara så där med.

Medlem sedan jan. 20011 140 inlägg
#11

Ok, tack för era svar. Har just nu provat svaret i tråden som Matte postade. Jag får avvakta och se ifall det funkar eller inte. Men vad exakt gör den här kodraden?

header('P3P: CP="NOI ADM DEV PSAi COM NAV OUR OTRo STP IND DEM"');
265 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
128 ms — deklarationer (db)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)