Archief - PHP: Inlogsysteem

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Sprits

Legacy Member
Dit is mijn admin.php! ook wel het inlogsysteem genaamd!

Mijn leerkracht had iets gezegd van
  • bestaat de sessie?
    • ja: dan kan je toevoegen enzo
    • nee: Is er dan gepost in het formulier?
      • ja: dan maak je de sessie aan
      • nee: dan ga je naar het formulier

maar ik kom op een wit scherm met niks erop! Iemand?

PHP:
<?php 
session_start();
include ('connect.php');

$query = "SELECT username, paswoord FROM members WHERE username = '$HTTP_POST_VARS[username]' AND paswoord = '$HTTP_POST_VARS[paswoord]' and type='Admin'"; 
$result = mysql_query($query); 

if (isset($_SESSION[$username]))
{	
	echo("Klik <a href='logout.php'>hier</a> om u uit te loggen.<br><br>");
	echo("<a href='voeg.php'>Nieuws toevoegen</a><br>");
	echo("<a href='bewerken.php'>Nieuws bewerken</a><br>");
	echo("<a href='verwijder.php'>Nieuws verwijderen</a><br>");
}
else 
{

	if($HTTP_POST_VARS[username]=="$username" && $HTTP_POST_VARS[paswoord]=="$paswoord") 
	{
		while(list($username,$paswoord)= mysql_fetch_row($result))
		{
			session_register($username); 
        	session_register($paswoord);
		}
	}
	else
	{
?>
		<html>
		<head>
		<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
		<title>Log in</title>
		</head>

		<body>
		<form name="form1" method="post" action="<?php echo($_SERVER["PHP_SELF"]);?>">
		<input type="hidden" name="tmp" value="yes">
			Username: <input name="username" type="text"><br>
			Paswoord: <input name="paswoord" type="password"><br>
			<input type="submit" value="Inloggen">
		</form>
		</body>
		</html>	
<?php
	}
}
?>

t584

Legacy Member
probeer eens is om je laatste php stukje binnen je <body> te zetten

hij staat er namelijk buiten...

maT'

Legacy Member
Maak van deze regel:
PHP:
if($HTTP_POST_VARS[username]=="$username" && $HTTP_POST_VARS[paswoord]=="$paswoord")
al eens dit:
PHP:
if($_POST['username']==$username && $_POST['paswoord']==$paswoord)
je gebruikt hier de variabelen $username en $password, welke nergens gezet worden (en dus ook geen inhoud hebben) - tenzij dit in config.php gebeurd.

Zoek verder nog wat info op over de global $_SESSION[], want session_start() is al outdated.

Verder:
gebruik ook in je query register globals:
PHP:
$query = "SELECT username, paswoord FROM members WHERE username = '". $_POST['username'] ."' AND paswoord = '". $_POST['paswoord'] ."' AND type='Admin'";
$result = mysql_query($query);

orez

Legacy Member
kvind et login scriptje beetje heel simplistisch, en als ik mij niet vergis zie ik nerges redirections gebeuren :/

vb van mijn login scriptje (wel ietwat geavanceerder, maar mss ben je er wel iets mee ;))

ben ook nog beginner, dus Col.Kurtz als ge foutjes ziet :p let me know :D

PHP:
<?php
session_start();

if($_GET['action'] == 'login') {
	require_once("config/dbconnect.php");
	$link = mysql_connect($db_host, $db_user, $db_pass);
	if (!$link) {
		printf(mysql_error($link));
	} else {
		mysql_select_db('jsdp', $link);

		$query = "SELECT seclvl, activated, banned, username FROM tbllogin WHERE(username='" . $_POST['username'] . "' AND pass='" . sha1($_POST['password']) . "')";
		$last_login = "UPDATE tbllogin SET last_login='" . date("Y-m-d H:i:s") . "' WHERE(username='" . $_POST['username'] . "' AND pass='" . sha1($_POST['password']) . "')";
			
		if ($result = mysql_query($query, $link)) {
			$control = mysql_num_rows($result);
		}
		
		
		if ($control == '1') {
			if (mysql_query($last_login, $link) === TRUE) {
				$obj = mysql_fetch_object($result);
				if($obj->banned == 'N') {
					if ($obj->activated == 'Y') {
						if ($obj->seclvl != 3) {
							$_SESSION['error'] =  "You don't have the rights to access this page!";
							printf("<meta http-equiv=\"refresh\" content=\"0;url=index.php\">");
						} else {
							$_SESSION['level'] = 3;
							$_SESSION['s_user'] = $obj->username;
							$_SESSION['error'] = "";
							printf("<meta http-equiv=\"refresh\" content=\"0;url=cpanel.php\">");
						}
					} else {
						$_SESSION['error'] = "Your account isn't activated yet!";
						printf("<meta http-equiv=\"refresh\" content=\"0;url=index.php\">");
					}
				} else {
					$_SESSION['error'] =  "You are banned!";
					printf("<meta http-equiv=\"refresh\" content=\"0;url=index.php\">");
				}
			} else {
				printf(mysql_error());
			}
		} else {
			$_SESSION['error'] =  "Wrong username or password";
			printf("<meta http-equiv=\"refresh\" content=\"0;url=index.php\">");
		}
	}
} else {
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" href="styles/login.css" type="text/css" />
<link rel="shortcut icon" type="image/ico" href="images/favicon.ico" />
<title>.controlpanel login</title>
<script type="text/javascript">
	function changecolor(color) {
		document.getElementById('login').style.backgroundColor=color
	}
</script>
</head>

<body>
	<div id="gecentreerd">
		<a href="http://www.jsdp.be"><img src="images/logo.jpg" alt="JSDP cpanel" /></a>
		<span class="header">.controlpanel</span>
		<form action="index.php?action=login" method="post">
			<table summary="login">
				<tr>
					<td>
						<label for="username">.username:</label>
					</td>
					<td>
						<input type="text" id="username" name="username" /><br />
					</td>
				</tr>
				<tr>
					<td>
						<label for="password">.password:</label>
					</td>
					<td>
						<input type="password" id="password" name="password" /><br />
					</td>
				</tr>
				<tr>
					<td>
						<!-- empty -->
					</td>
					<td>
						<input value="login" name="login" id="login" type="submit" class="form_button" onmouseover="changecolor('#ADD94E')" onmouseout="changecolor('#8DD4E6')" /><br />
					</td>
				</tr>
			</table>
		</form>
		<span class="errormsg"><?php printf($_SESSION['error']); ?></span>
		<span class="ff"><a href="http://getfirefox.com"><img src="images/firefox.gif" alt="" class="ff" /></a></span>
	</div>
</body>
</html>
<?php
}
?>

want kdenk eerlijk gezegd ook nog wel da dees korter kan. gtrz :)

Sprits

Legacy Member
ik weet da het vree simpel is... ma ik begin van in het begin... Hetgeen ik zie bij u snap ik de helft ni van! :)

en thx Mat for help...
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan