ved du hvad, kan stadigvæk ikke få det til at virke, nu får du sku lige hele koden
<?php
session_start();
class community {
var $user; // Brugernavn
var $pass; // Password
var $mode; // Mode
var $db_host; /* Host
var $db_user; Brugernavn
var $db_pass; Password
var $db_name; Navn - på database */
// Database kontakt
function database() {
$this->db_host = "x";
$this->db_user = "x";
$this->db_pass = "x";
$this->db_name = "x";
mysql_connect($this->db_host, $this->db_user, $this->db_pass) or die("Kan ikke kontakte database: mysql_error()");
mysql_select_db($this->db_name) or die("Kan ikke vælge database: mysql_error()");
}
function tilmeld() {
if ($_POST && isset($_POST["Submit1"])) {
$tilmeld = 0;
$camping = 0;
$sove = 0;
// Validate
if (in_array($_POST["tilmeld"],array('1','2'))) {
$tilmeld = $_POST["tilmeld"] == 2 ? 2 : 1;
} else {
die('Fejl: du har ikke valgt om du kommer eller ikke kommer');
}
// Default stuff
$user = $_SESSION["user"];
// Update
$sql = "UPDATE login SET tilmeld = `$tilmeld` WHERE user = `$user`";
print '<pre>SQL: '.$sql.'</pre>';
mysql_query($sql);
echo "Din tilmelding er registreret.";
} else {
echo '
<form name="form1" method="POST" ACTION="?mode=tilmeld">
<input type="radio" name="tilmeld" value="1"> Kommer
<input type="radio" name="tilmeld" value="2"> Kommer ikke
<input type="submit" name="Submit1" value="Tilmeld">
</form>';
}
}
function menu() {
// Menu til dem, der er logget ind
$sql = mysql_query("SELECT * FROM `login` ORDER BY `user` ASC");
$admin = $row["admin"];
echo "<a href=\\"?mode=tilmeld\\">Tilmelding</a>";
echo "<br /><a href=\\"?mode=brugerliste\\">Brugerliste</a>\\n";
echo "\\n<br />\\n<a href=\\"?mode=logout\\">Log ud</a>";
if ($admin == 0) {
echo "<br /><br />admin menu:<br /><a href=\\"?mode=opret\\">Opret gæst</a>";
}
else {}
}
// Login procedure
function login($user, $pass) {
$this->user = stripslashes($user);
$this->pass = stripslashes($pass);
if (!$user || !$pass) { // Hvis intet brugernavn ...
return false;
}
else {
$sql = mysql_query("SELECT * FROM `login` WHERE `user` = '$this->user' AND `pass` = '$this->pass'");
$row = mysql_fetch_array($sql);
if (mysql_num_rows($sql) == 1) { // Hvis $sql returnerer 1 række ...
// Opdater tid for online
$time = time();
mysql_query("UPDATE `login` SET `online` = '$time' WHERE `user` = '$this->user'");
// Autologin procedure
if ($_POST["auto"]) {
setcookie("user", "$this->user", time()+1209600*2);
setcookie("pass", "$this->pass", time()+1209600*2);
}
$_SESSION["user"] = $row["user"];
$_SESSION["pass"] = $row["pass"];
$_SESSION["log"] = true;
$this->user = $row["user"];
$this->pass = $row["pass"];
echo "Hej <b>$this->user</b><hr />";
$this->menu();
return true;
}
else {
echo "Fejl i login";
echo "<meta http-equiv=\\"refresh\\" content=\\"2; url=?mode=logout\\" />";
}
}
}
function brugerliste() {
$sql = mysql_query("SELECT * FROM `login` ORDER BY `user` ASC");
echo "<center><table border=\\"1\\" cellpadding=\\"5px\\" cellspacing=\\"0\\">\\n";
echo "<tr><th bgcolor=\\"#CCCCCC\\">Navn</th><th bgcolor=\\"#CCCCCC\\">Tilmelding</th><th bgcolor=\\"#CCCCCC\\">Skal sove der</th><th bgcolor=\\"#CCCCCC\\">Tager selv campingvogn med</th></tr>\\n";
while ($row = mysql_fetch_array($sql)) {
// Brugernavn- og tid-variabler
$user = $row["user"];
$tilmeld = $row["tilmeld"];
$camping = $row["camping"];
$sove = $row["sove"];
$bruger_tid = $row["online"];
// Udskriv data
echo "<tr><td align=\\"center\\">$user</td>";
if ($tilmeld == 1) {
echo "<td align=\\"center\\"><font color=\\"green\\">Kommer</font></td>";
} else { }
if ($tilmeld == 2) {
echo "<td align=\\"center\\"><font color=\\"red\\">Kommer ikke</font></td>";
}
else{}
if ($tilmeld == 0) {
echo "<td align=\\"center\\">Afventer svar</td>";
}
else {}
if ($sove == 1) {
echo "<td align=\\"center\\"><font color=\\"green\\">Ja</font></td>";
} else { }
if ($sove == 2) {
echo "<td align=\\"center\\"><font color=\\"red\\">Nej</font></td>";
}
else{}
if ($sove == 0) {
echo "<td align=\\"center\\">Afventer svar</td>";
}
else {}
if ($camping == 1) {
echo "<td align=\\"center\\"><font color=\\"green\\">Ja</font></td>";
} else { }
if ($camping == 2) {
echo "<td align=\\"center\\"><font color=\\"red\\">Nej</font></td>";
}
else{}
if ($camping == 0) {
echo "<td align=\\"center\\">Afventer svar</td>";
}
else {}
echo "</tr></center>";
}
}
function opret() {
$user = addslashes(htmlentities($_POST["user"]));
$pass = addslashes(htmlentities($_POST["pass"]));
$camping = 0;
$tilmeld = 0;
$sove = 0;
$admin = 0;
$dato = date("d/m-Y - H:i");
if ($user) {
if (!ereg("[A-z]", $user)) {
$fejl[] = "Dit brugernavn er ugyldigt";
}
if (!ereg("[A-z]", $pass)) {
$fejl[] = "Dit password er ugyldigt";
}
if (mysql_num_rows(mysql_query("SELECT * FROM `login` WHERE `user` = '$user'")) == 1) {
$fejl[] = "Brugernavnet er optaget";
}
if (is_array($fejl)) {
echo "Din bruger blev ikke oprettet fordi:\\n";
for ($i = 0; $i < count($fejl); $i++) {
echo "<li>$fejl[$i]</li>\\n";
}
echo "</ul>";
exit;
}
else {
echo "Din gæst er nu oprettet.";
mysql_query("INSERT INTO `login` (`user`, `pass`, `camping`, `tilmeld`, `sove`, `admin`, `dato`, `online`) VALUES ('$user', '$pass', '$camping', '$tilmeld', '$sove','$admin' '$dato', '0')") or die("Kunne ikke oprette bruger: mysql_error()");
}
}
if ($_SESSION["log"] == true) {
return false;
}
else {
echo "<form action=\\"?mode=opret\\" method=\\"post\\">";
echo "<table>\\n";
echo "<tr><td>Brugernavn:</td><td><input type=\\"text\\" name=\\"user\\" /></td></tr>\\n";
echo "<tr><td>Password:</td><td><input type=\\"password\\" name=\\"pass\\" /></td></tr>\\n";
echo "<tr><td></td><td><input type=\\"submit\\" value=\\"Opret\\" /></td></tr></table></form>";
}
}
function loginformular() {
// Formular til at logge ind
echo "<form action=\\"?mode=login\\" method=\\"post\\">\\n";
echo "<table>\\n";
echo "<tr><td width=\\"10%\\">Navn:</td><td><input type=\\"text\\" name=\\"user\\" class=\\"field\\" /></td></tr>\\n";
echo "<tr><td width=\\"10%\\">Kodeord:</td><td><input type=\\"password\\" name=\\"pass\\" class=\\"field\\" /></td></tr>\\n";
echo "<tr><td></td><td><input type=\\"submit\\" value=\\"Login\\" /> <input type=\\"checkbox\\" name=\\"auto\\" value=\\"true\\" /> Autologin</td></tr>\\n";
echo "</table>\\n</form>";
}
}
// Tilslut klasse
$community = new community;
$community -> database(); // Opret kontakt til database
// Opdater
if ($_SESSION["log"]) {
$time = time();
$user = $_SESSION["user"];
mysql_query("UPDATE `login` SET `online` = '$time' WHERE `user` = '$user'");
}
// Opret $mode
$mode = $_GET["mode"];
if (!$mode) {
$mode = "index";
}
// Udfør kommandoer ved hjælp af $mode ...
switch($mode) {
case "opret":
if ($community -> opret() === false) {
exit("Du er allerede logget ind på brugeren <b>" . $_SESSION["user"] . "</b></body></html>");
}
break;
case "login":
if ($_SESSION["log"]) {
$community -> login($_SESSION["user"], $_SESSION["pass"]);
}
elseif ($_COOKIE["user"]) {
$community -> login($_COOKIE["user"], $_COOKIE["pass"]);
}
else {
$community -> login($_POST["user"], $_POST["pass"]);
}
break;
case "brugerliste":
$community -> brugerliste();
break;
case "tilmeld":
$community -> tilmeld();
break;
case "logout": {
// Tøm session
session_unset();
// Slet eventuelle cookies
setcookie("user", "", time()-3600);
setcookie("pass", "", time()-3600);
// Redirect til loginformular
header("location: ?mode=index");
exit;
}
break;
default: {
if ($_COOKIE["user"]) {
$community -> login($_COOKIE["user"], $_COOKIE["pass"]);
exit;
}
if ($_SESSION["log"]) {
$community -> login($_SESSION["user"], $_SESSION["pass"]);
exit;
}
else {
$community -> loginformular();
exit;
}
}
}
mysql_close();
echo "</body></html>";
?>
-- edit --
skal lige siges jeg ikke har skrevet hele koden selv!
Indlæg senest redigeret d. 19.01.2008 21:13 af Bruger #10022