Overskriften er måske lidt underlig, men kunne ikke lige finde på noget bedre at skrive...
Jeg er ved at lave en hjemmeside, med et loginsystem, hvor der
bliver oprettet forskellige sessions, når man logger ind.
Det virker da egentlig også fint nok, og det var først i går der lige pludselig opstod en underlig fejl - på en bestemt side "glemmer" Opera og FF mine sessions, så det ser ud som om man ikke er logget ind, hvilket er et ret stort problem for mig. Det helt underlige er, at IE7 ikke laver fejlen.
Jeg bruger query strings til at stille min side op, så i princippet burde der stå det nøjagigt samme på alle sider, eftersom man befinder sig på den samme side hele tiden - det er bare forskellige filer ("sider"), der bliver includet.
Derfor er det heller ikke fordi jeg har glemt at starte mine sessions...
Her er index.php:
<?php
session_start();
$side = $_GET['side'];
print "<?xml version=\\"1.0\\" encoding=\\"iso-8859-1\\"?>";
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="da">
<head>
<title>Maltkonvent.dk</title>
<link rel="stylesheet" type="text/css" href="http://maltkonvent.dk/style.css" />
</head>
<body>
<div class="headcontent">
<div class="logo">
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<form action="http://maltkonvent.dk/index.php?side=check_kodeord" method="post">
<div>
<input name="password" type="password" id="password" maxlength="11" style="border: 1px solid black; width: 70px; height: 17px;"/>
<input name="submit" type="submit" value="ok" style="border: 1px solid black; height: 21px; width: 27px; background-color: #FFFFFF;"/>
</div>
</form>
</div>
<div style="float: right;">
<img src="http://maltkonvent.dk/menustreg.gif" alt="l" />
</div>
<div style="float: right;">
<?php
$sessn = $_SESSION['navn'];
if ($sessn) {
?>
<h3>Menu</h3>
<ul class="bull2">
<li><a href="http://maltkonvent.dk/index.php?side=fortrad">Forum</a></li>
<li>Link 2</li>
<li>Link 3</li>
</ul>
<?php
}
print "
Velkommen! <br />
Siden er under konstruktion!";
?>
<p>
<a href="http://validator.w3.org/check?uri=referer"><img
src="http://www.w3.org/Icons/valid-xhtml10-blue"
alt="Valid XHTML 1.0 Strict" height="31" width="88" class="noborder" /></a>
</p>
</div>
<div style="float: right;">
<img src="http://maltkonvent.dk/menustreg.gif" alt="l" />
</div>
<div class="indhold">
<div style="text-align: left;">
<?php
if($side == "check_kodeord") {
include("check.php");
}
elseif($side == "fortrad") {
include("fortrad.php");
}
elseif($side == "vistrad") {
include("vistrad.php");
}
elseif($side == "tradsend") {
include("tradsend.php");
}
else{
include("forside.php");
}
?>
</div>
</div>
<img src="http://maltkonvent.dk/hvidstreg.gif" alt="l" /><br />
maltkonvent.dk © 2007 by Malt Konvent
</div>
</body>
</html>
Og her er så "problemsiden":
<?php
include("database.php");
$oid = $_GET['emne'];
$hent_trad = mysql_query("SELECT * FROM trad WHERE id='$oid'");
while($get_trad = mysql_fetch_assoc($hent_trad)) {
extract($get_trad);
$emne = nl2br($emne);
$tfelt = nl2br($tfelt);
$signatur = nl2br($signatur);
print "
<p>
<b>$emne"; ?> | <?php print "$forfatter <br /></b>
<br />
$tfelt <br/>
<br />
<i>$signatur</i>
</p>
<p style=\\"text-align: right;\\"><i>Dato: <b>$dato</b></i></p>
";
}
print "
<hr />
<b><h3>Svar:</h3></b>
<hr />";
$hent_svar = mysql_query("SELECT * FROM trad_system WHERE trad_id='$oid'");
while($get_svar = mysql_fetch_assoc($hent_svar)) {
extract($get_svar);
$felt = nl2br($felt);
print "<b>$navn <br /></b>
<br />
$felt
<br />
<i>$signatur</i><br />
<p style=\\"text-align: right;\\"><i>Dato: <b>$dato</b></i></p>
<hr />
";
}
?>
Håber nogle kan hjælpe mig, og fortælle mig, hvad der kan være galt
Et link til maltkonvent.dk hjælper nok desværre ikke, da man skal være logget ind for at se fejlen
Hilsen Clara